Ich habe folgendes Problem bezüglich des Exit-Ereignisses:
Ich habe eine Eingabemaske für eine Excel-Datenbank programmiert. In der Datenbank befinden sich mehrere nummerierte Objekte. Mittels meiner Eingabemaske werden neue Einträge hinzugefügt. Um doppelte Eingaben zu verhindern, wird bei der Eingabe der Objektnummer geprüft, ob das Objekt bereits in der Datenbank vorhanden ist. Folgende Routine wird verwendet:
Private Sub TxtObjektnummer_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If Me.TxtObjektnummer.Value "" Then
If DurchsucheObjektNummer(Me.TxtObjektnummer.Value) = True Then
MsgBox ("Objekt ist bereits in der Datenbank vorhanden")
Me.TxtObjektnummer.Value = ""
Me.TxtObjektnummer.SetFocus
Else
End If
End If
End Sub
Ich bin bisher davon ausgegangen, dass das Exit Ereignis ausschließlich bei Verlassen des entsprechenden Steuerelements ausgelöst wird. Wenn ich allerdings meine Prozedur zum Auslesen der Werte in meine Datenbank per Button aktiviere, wird nach dem Befehl Unload Me nochmal das Exit-Ereignis gestartet. Somit findet er den frisch eingetragenen Wert in der Datenbank und zeigt mir die MsgBox "Objekt ist bereits in der Datenbank vorhanden" erneut an.
Was kann ich tun? Kennt jemand dieses Problem? Wäre wirklich äußerst dankbat für Tipps oder Ratschläge. Mit dem Befehl Application.EnableEvents = False habe ich es auch schon versucht, leider vergeblich.