setfocus setzt den Fokus nicht
21.07.2015 10:06:56
P-Quest
ich führe in der Textbox txtMenge einer Userform eine Prüfung durch. Sollte die Prüfung negativ sein, so erscheint eine Fehlermeldung.
Das klappt, dank der zahlreichen Hilfen hier im Forum, auch problemlos. Es gibt nur einen kleinen Schönheitsfehler.
Nachdem ich die Fehlermeldung bestätigt habe, soll der focus auf das Feld txtMenge gesetzt werden. Leider springt der Cursor aber immer in das nächste Feld.
Private Sub txtMenge_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If blnSchliessen = False Then
txtMenge = Trim(txtMenge.Value)
If Val(txtMenge.Value) = 0 Or txtMenge.Value = "" Then
If Not UFCloseMode Then
MsgBox "Bitte geben Sie für die Menge einen Wert größer 0 ein!", vbCritical, " _
Falsche Eingabe"
txtMenge.SetFocus
End If
Else
If Not cbID = "" Then
Call WertBer
Else
txtWert.Value = 0
End If
End If
End If
End Sub
Gibt es hier noch eine Eigenschaft, die ich ändern muss?Bei diesem Beispiel funktioniert es einwandfrei.
Private Sub Checkdata(fault)
Dim ws As Worksheet
Dim i As Byte
Dim lngLastRow As Long
fault = 0
Set ws = Worksheets("EinAus")
lngLastRow = ws.Cells(Rows.Count, 1).End(xlUp).Row
If cbID = "" Then
MsgBox "Sie müssen eine ID auswählen.", 16
fault = 1
cbID.SetFocus
ElseIf txtDatum = "" Then
MsgBox "Sie müssen ein Datum eingeben.", 16
fault = 1
txtDatum.SetFocus
ElseIf Val(txtMenge.Value) = 0 Or txtMenge.Value = "" Then
MsgBox "Bitte geben Sie für die Menge einen Wert größer 0 ein!", vbCritical, "Falsche _
Eingabe"
fault = 1
txtMenge.SetFocus
End If
End Sub
Gruß,Peter