Hallo Leute, ich brauche dringend eure Hilfe.
Ich weiß mein Anliegen erscheint nicht für jeden sinnvoll, aber ich muss es auf diesem Weg hinbekommen.
Folgende Problematik:
Ich habe 2 Textfelder (Datentyp: Zahl -> ID und ID_2), diese Vergleiche ich miteinander auf Gleichheit. Sind sie nicht gleich, werden beide gelöscht und der Benutzer wird gezwungen beide Zahlen noch einmal einzugeben.
Jetzt soll der Cursor wieder zu der Ersten Eingabe springen (-> ID).
Dieses Problem bekomme ich nicht hin. Der Cursor bleibt immer im 2. Feld(-> ID_2) stehen.
Hat jemand eine Lösung?
Hier ist der Code den ich benutze:
Private Sub Form\_BeforeUpdate(Cancel As Integer)
If IsNull(Me!ID) Or IsNull(Me!ID\_2) Then
MsgBox "Gebe bitte eine ID ein!"
Cancel = True
Exit Sub
End If
Nz(Me!ID, 0) Nz(Me!ID\_2, 0) Then
MsgBox "Die ID Nummern sind nicht identisch!" & vbCrLf & \_ "Bitte nochmals eingeben!"
Me!ID\_2.Undo
Me!ID = Null
Cancel = True
End If
End Sub
'Zweiteingabe ID: Vergleich
Private Sub ID\_2\_BeforeUpdate(Cancel As Integer)
If IsNull(Me!ID\_2) Then
MsgBox "Gebe bitte eine ID ein!"
Cancel = True
Exit Sub
End If
If IsNull(Me!ID) Then Exit Sub
If Nz(Me!ID, 0) Nz(Me!ID\_2, 0) Then
MsgBox "Die ID Nummern sind nicht identisch!" & vbCrLf & \_
"Bitte nochmals eingeben!"
Me!ID\_2.Undo
Me!ID = Null
Cancel = True
End If
End Sub
'Ersteingabe ID: Vergleich
Private Sub ID\_BeforeUpdate(Cancel As Integer)
If IsNull(Me!ID) Then
MsgBox "Gebe bitte eine ID ein!"
Cancel = True
Exit Sub
End If
If IsNull(Me!ID\_2) Then Exit Sub
If Nz(Me!ID, 0) Nz(Me!ID\_2, 0) Then
MsgBox "Die ID Nummern sind nicht identisch!" & vbCrLf & \_
"Bitte nochmals eingeben!"
Me!ID.Undo
Me!ID\_2 = Null
Cancel = True
End If
End Sub