Hallo Korbinian
Versuchs mal mit folgendem Code:
Private Sub Formularfeldname_LostFocus()
If Me!Formularfeldname.Value = DLookup("Spaltename", "Tabellename", "irgendeinFeld=10") Then
MsgBox "Achtung: Wert ist doppelt"
End If
End Sub
Mit 'Me!Formularfeldname.Value' (.Value könnte auch weggelassen werden) liesst Du den aktuellen Feldwert in Deinem Formular aus.
Mit DLookup (entspricht im Funktionsassistent "DomWert") ermittelst Du einen Wert aus einer Domäne. Die Domäne ist die Tabelle (2. Argument), der Wert ist der Spaltenname der Tabelle (1.Argument). Mit dem 3. Argument kannst Du optional die Domäne (Menge der Datensätze) einschränken, wie bei einer WHERE-Klausel ohne "WHERE". Mehr dazu in der Access-Hilfe unter DLookup, bzw. DomWert.
Der Syntax ist ok, sonst ist der Code aber nicht weiter getestet.
Problematisch könnte hier die Rehenfolge der Ereignisse sein.
Tritt das Ereigniss "LostFocus" vor oder nach dem Aktualisieren des Datensatzes in der Tabelle auf?
Entsprechend müsste man die Prüfung ins Ereignis "Vor Aktualisieren" (BeforeUpdate) legen.
Grüsse
Tom