Ich gebe eine Zahl in die Textbox2 in einer Userform ein.
Ist diese Zahl ok dann wird der Cursor automatisch in die Textbox3 gestellt.
Ist die Zahl jedoch falsch dann sollte die Textbox2 wieder geleert werden, damit die richtige Zahl eingegeben werden kann.
Wenn jedoch die Zahl falsch ist springt der Cursor immer wieder in die TextBox3 obwohl er eigentlich in der TextBox2 aktiviert werden sollte.
Wo liegt hier bitte mein Denkfehler?
Danke
Josef
Private Sub TextBox2_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Dim arrZahlen(10) As Long, lngI As Long
For lngI = 0 To 9
arrZahlen(lngI) = CLng(Mid(TextBox2, lngI + 1, 1))
Next lngI
TextBox21.Text = arrZahlen(0) * 3
TextBox22.Text = arrZahlen(1) * 7
TextBox23.Text = arrZahlen(2) * 9
TextBox32.Text = arrZahlen(3)
TextBox24.Text = arrZahlen(4) * 5
TextBox25.Text = arrZahlen(5) * 8
TextBox26.Text = arrZahlen(6) * 4
TextBox27.Text = arrZahlen(7) * 2
TextBox28.Text = arrZahlen(8) * 1
TextBox29.Text = arrZahlen(9) * 6
TextBox30 = CDbl(TextBox21) + CDbl(TextBox22) + CDbl(TextBox23) + CDbl(TextBox24) + _
CDbl(TextBox25) + CDbl(TextBox26) + CDbl(TextBox27) + CDbl(TextBox28) + CDbl(TextBox29)
TextBox31.Text = TextBox30 Mod 11
If TextBox32.Text = TextBox31 Then
TextBox2.Text = TextBox2
Label48.Caption = "VSNR OK"
With TextBox3
.SetFocus: .SelStart = 0: .SelLength = Len(.Text)
End With
Else
TextBox2.Text = ""
Label48.Caption = "VSNR falsch"
With TextBox2
.SetFocus: .SelStart = 0: .SelLength = Len(.Text)
.TabIndex = 3
End With
End If
End Sub