Kombifeld und neue Daten

Hallo ihr Datenbankmacher!

Heute stand ich schon wieder vor dem Problem mit dem Kombinationsfeld. Dieses Feld bezieht seine Werte aus einer Tabelle, wie sollte es auch anders sein. Werte Auswählen geht ja ganz prima. Das Problem kommt, wenn man versucht einen Wert einzugeben, der nicht vorkommt. Dennoch soll der Wert aufgenommen werden. Mit dem Ereignis ‚bei Wert nicht in der Liste‘ kann man einen Dialog aufrufen, mit dem man diesen Wert eingeben kann. Soweit geht es auch relativ gut. Doch wenn ich den Dialog beende, bekomme ich immernoch die Fehlermeldung: ‚Wert nicht in der Liste …‘, trotzdem ich vorher Kombinationsfeld.Text="" ausgeführt habe.
Wie kann ich diese Fehlermeldung unterdrücken?

Mit bestem Dank im Voraus
Euer Guido

Hi Guido,

guck mal nach Eigenschaften/Daten/Nur Listeneinträge, da sollte „Nein“ stehen. Das Ereignis ‚bei Wert nicht in der Liste‘ wird nur dann angesteuert, wenn ein Wert eingegeben wird, der nicht in der Liste ist und die Option auf „ja“ steht.

Gruß Ralf

Das Kombifeld habe ich Testfeld genannt - Die Prozedur „Bei nicht in Liste“ mußt Du halt entsprechend anpassen (Tabellenname etc. …

Gruss aus Finnland
Stephan

Private Sub Testfeld_NotInList(NeueEingabe As String, Response As Integer)
Dim ctl As Control
Dim db As Database
Dim rs As Recordset
Set db = CurrentDb

Set ctl = Me!Testfeld

If MsgBox(„Wert " & NeueEingabe & " fehlt. Hinzufügen?“, vbOKCancel) = vbOK Then
Response = acDataErrAdded
Set rs = db.OpenRecordset(„Tabelle1“)
rs.AddNew
rs.Fields(„Test“) = NeueEingabe
rs.Update
Else
Response = acDataErrContinue
ctl.Undo
End If

End Sub