Prüfen ob ID vorhanden ist vor dem Generierung

Hallo Leute,
ich habe in einem Formular ein Schaltfläche „ID anlegen“, der ein Zufall ID von 5 Ziffern generiert.Das Problem ist aber das er manche ID generiert die schon vorhanden sind.Kann jemand mir bitte sagen wie ich mein Code anpassen kann, damit er ein bereit vorhandene ID, nicht übergibt?

Mein Code sieht so aus:

Private Sub BtnIDAnlegen_Click()

Dim sql As String
Dim rs As DAO.Recordset

sql = „select BerID from tblPatienten“
Set rs = CurrentDb.OpenRecordset(sql)

Me.textIDAnlegen.SetFocus
Me.textIDAnlegen.Text = Str(RandomID)

End Sub
_____________________________________________________
Function RandomID() As Long

Dim i As Integer
Dim ID As String
Dim LRandomNumber As Long

For i = 0 To 5
LRandomNumber = Int((9 - 1 + 1) * Rnd + 1)
ID = ID & Str(LRandomNumber)
Next i

LRandomNumber = Val(ID)

RandomID = LRandomNumber

End Function

Hallo whouston,

Nach dem generieren versuchen ob ein Datensatz mit der id vorhanden ist:

select id from tabelle where id = 1254

    
    
    Liefert das eine Zeile, gibts einen Datensatz mit der id.
    
    Aber: Was nun? solnage testen bis eine neue Id gefunden wurde?
    
    Nein!
    
    Definiere in der DB das Feld id mit:
    [id] [int] IDENTITY (1, 1) NOT NULL
    
    Fordere einen neuen Datensatz an und lass dir die neue ID übergeben:
    (SQL)
    INSERT INTO tabelle (feld1) VALUES ('New Value') SELECT @@IDENTITY AS 'Identity'"
    
    Die Abfrage trägt einen neuen Datensatz ein und liefert dessen id zurück.
    
    biba
    
    Dirk.Pegasus

Ich habe die Loesung gefunden.
Ich habe die Funktion Binäre Suche benutzt.