Avatar billede art_vandalay Nybegynder
10. december 2004 - 10:10 Der er 9 kommentarer og
1 løsning

Autonummerering af ID uden brug af Autonummerering?

Hej Alle,
jeg har flere tabeller hvor jeg gerne vil have autonummereringsfunktion på. Da jeg f.eks. allerede har en masse kundeID'er som ikke er fortløbende (dvs. 1,2,3,4 osv) men den ser nærmere sådan ud: 1001,1002,1005,1008 osv. Mine kunder kender deres eget nummer så jeg ønsker ikke at starte fra 1, men at beholde de kundenumre der ligger i databasen (derfor mener jeg ikke at datatypen autonummerering kunne bruges). Hvordan opretter jeg så en ny kunde, hvor kundeID automatisk bliver sidste kundeID+1?
På forhånd tak.
Avatar billede jkrons Professor
10. december 2004 - 10:13 #1
Du kan fx gemme det sidste kundenummer i en tabel. Derefter kan du lave et opslag i tabellen, når du opretter en ny kunde. Læg en til det gemte nummer, og brug det som nyt kundenummer. Gem det nye kundenummer i tabellen til næste gang. Lav funktionen i kode, og læg det fx på en knap, eller på en hændelse i kundenummerfeltet.
Avatar billede mugs Novice
10. december 2004 - 10:15 #2
Private Sub Form_Current()
If Me.NewRecord Then
Me.FELTNAVN = DMax("[FELTNAVN]", "TABELNAVN") + 1
End If
End Sub
Avatar billede art_vandalay Nybegynder
10. december 2004 - 10:24 #3
Jeg glemte vist at sige at jeg er ret ny i Access, så jeg er ikke helt sikker på hvordan man laver dit løsningsforslag. I min kundetabel har jeg alle ID'erne inkl. det sidste (mener du en særskilt tabel?), så hvordan i kode tages denne værdi og lægges 1 til?
Avatar billede jkrons Professor
10. december 2004 - 10:27 #4
I forslaget fra Mugs, som en simplere end mit, bruger du den tabel, du har dine kunder i.

Åbn din formular i designvisning.Tryk alt+F11 og kopier mug's kode til modulet. Ret tabel og feltnavne til dine egne.
Avatar billede art_vandalay Nybegynder
10. december 2004 - 10:31 #5
mugs,
hvor skal din kode tilføjes henne? Jeg bruger forresten en formular til oprettelsen af nye kunder.
Avatar billede mugs Novice
10. december 2004 - 10:34 #6
Som det fremgår af koden:

I formularens VedAktuel hændelse (Current) i engelske versioner
Avatar billede art_vandalay Nybegynder
10. december 2004 - 10:35 #7
jkrons,
efter alt+F11 åbnes VBA men jeg har intet at skrive på. Det er ligesom Word hvor alle docs er lukkede men programmet stadigt oppe.
Avatar billede mugs Novice
10. december 2004 - 10:38 #8
Åbn din formular i Designvisning > Højreklik i det mørkegrå område i selve formularen (IKKE Detaljesektionen - Men selve formularen) > Egenskaben > Fanen Hændelser > Sæt markøren på linien VedAktuel > Tryk på de 3 små ... i højre side > Indsæt min kode undtagen 1. og sidste linie > Ret Tabel- og feltnavne. Så skal det køre.
Avatar billede art_vandalay Nybegynder
10. december 2004 - 10:42 #9
Tusind tak for tålmodigheden, det ser ud til at virke nu.
Avatar billede mugs Novice
10. december 2004 - 10:44 #10
Selv tak - Og tak for point.
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester