19. juni 2001 - 21:36Der er
13 kommentarer og 1 løsning
Nummer.
Jeg har lidt et problem... Hvis man bruger autonummerering, kan tallene komme til at se sådan ud hvis man sletter nogle poster: 1,2,3,5,6,8,12 Hvordan kan man sætte access til at lave : 1,2,3,4,5,6,7 også selv om man måske sletter 2... -Brian
Det vil jeg fordi at jeg er ved at lave en side som skal vise nogle jokes, efter man har stemt på en, skal man vidre til den næste. Jeg kan bare ikke rigtig få den til at virke, for når Id\'en i databasen springer et tal over, kommer en EOF fejl. Jeg gør det ved at jeg bare ligger 1 til den nuværende id. Der er sikkert en smartere måde, men jeg kan ikke lige regne den ud lige nu...
Jeg starter med at sige, at ideen om AUTO-felter går fløjten nu, men:
Ved at bruge følgende funktion kan du finde første ledige nummer:
Public Function NextID(Rec As String, Fld As String) As Long Dim ra As Recordset, lngDummy As Long Set ra = CurrentDb.OpenRecordset(Rec) While Not ra.EOF And NextID < 1 lngDummy = lngDummy + 1 If lngDummy <> ra(Fld) Then NextID = lngDummy ra.MoveNext Wend Set ra = Nothing End Function
Den kaldes så med =NextID(\"tabelnavn\",\"feltnavn\")
Så skal datatypen bare også ændres fra Autonummer til Langt Heltal...
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.