19. juli 2005 - 14:01Der er
12 kommentarer og 3 løsninger
Manipulering af data (GUI newbie spm.)
Hej.
For lige at gøre det klart med det samme: Jeg er ikke vant til at lave GUI'er i Access ;)
Jeg har et antal tabeller som hver kun har 1 kolonne med en række poster i. Indholdet af disse tabeller skal jeg have lavet en mindre GUI til, der skal fungere som en Admin del hvor man kan tilføje, ændre og slette poster.
Hvordan gøres dette lettest og smartest? Har tænkt på at lave hver tabel som en SubForm med det felt eller noget og så et par knapper - vil det være fornuftigt?
Denne side indeholder artikler med forskellige perspektiver på Identity & Access Management i private og offentlige organisationer. Artiklerne behandler aktuelle IAM-emner og leveres af producenter, rådgivere og implementeringspartnere.
Hej, det lyder som udgangspunkt meget fornuftigt, men er der tale om mange tabeller eller få tabeller?, er der relationer mellem tabellerne, eller står de "alene". Der er mange måde at lave det på, men prøv at starte med at lave en mainform (uden postkilde), man kunne så oprette en subform for hver tabel og indsætte disse som ubunde subforms på din mainform. Men som sagt der er mange måde at gøre det på
Man kan også benytte en eller flere lister på mainformen i stedet for subformen, og benytte knapper til at oprette og ændre samt slette poster, benytter man blot en liste kan man feks. via combobox valg skifte rækkekilde på listen så det svare til den aktuelle tabel, dette kunne styres via select case eller andet
Hvis dine subforms ikke er skrivebeskyttede, er det jo blot at højreklikke for at slette, og elles redigere og oprette på normal vis, dette kræver ikke knapper med vba koder, men afvent eks. fra mugs han ryster altid op med noget godt og brugbart :o)
mugs: Dit eksempel er ca. det samme som jeg selv er kommet frem til ;)
Dog så vil jeg gerne have nogle knapper ind i billedet, for især det at slette en post syntes jeg er for besværligt (set ud fra et brugermæssigt synspunkt!) hvis man skal til at højreklikke og så vælge noget bestemt.
Måske det var nemmere og pænere at lave formen med en combobox, et tekstfelt og et par knapper!? Så bliver de eksisterende poster læst ind i comboboxen.
Hvis man vil tilføje en ny post, så skriver man det i tekstfeltet og klikker på Tilføj knappen.
Hvis man vil slette en post, så vælger man den i comboboxen og klikker på Slet knappen.
Hvis man vil ændre en post, så vælger man den i comboboxen, teksten vises i tekstfeltet, man kan ændre teksten, og så klikke på Gem knappen hvorefter værdien ændres i DB'en og alle værdier indlæses på ny i comboboxen.
Ovenstående er måske lidt mere besværligt, men også pænere og mere brugervenligt for folk der ikke er vant til den måde som man kan få Access til at bladre i posterne :)
Hvis du vil slette en post kan du bruge denne til et alfanumerisdk felt: DoCmd.RunSQL "DELETE FROM TABEL Where TABEL.IDFELT= '" & Me.COMBO & "'" Til et numerisk felt: DoCmd.RunSQL "DELETE FROM TABEL Where TABEL.IDFELT= " & Me.COMBO & ""
Hvis du vil slette formularens aktuelle post: DoCmd.RunCommand acCmdDeleteRecord
Mulighederne er så mange, at det ikke er nemt at give et eksakt svar på hvad der er bedst til din situation. Du kan jo også have en startformular med en række knapper der åbner den samme formular i forskellige tilstande.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.