habe ein kleine Problem.
Wenn ich das Makro hiermit aktiviere:
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
läuft alles.
Hiermit:
Private Sub TextBox1_Change()
werden die 0000 angezeigt, wenn ich jedoch eine Personalzahl eingebe, geht der Courser direkt an die 4. Stelle und ich gebe 2 Zahlen ein, kommt natürlich meine
Warnung.
Ich möchte jedoch direkt bei der Eingabe das die Werte in die Tabelle
reingeschrieben werden
und nicht beim verlassen der Textbox1 .
Hier mein gesamtes Makro:
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean) 'nach verlassen Anzeige
'
Private Sub TextBox1_Change() 'so schreibt direkt rein
Dim EingabeText As String
If Len(TextBox1) >= 5 Then
Beep
MsgBox " Achtung " & Chr(13) & Chr(13) & _
"Verkäufer Nr. ist 4 stellig," & Chr(13) & Chr(13) & _
"bitte NEU eingeben !!!" & Chr(13), vbCritical
TextBox1 = "0000"
TextBox1.SetFocus
With TextBox1
.SetFocus
.SelStart = 0
.SelLength = Len(.Text)
End With
Else
Worksheets("Prov-Blatt").Range("I2") = CDbl(TextBox1)
TextBox1 = Format(Worksheets("Prov-Blatt").Range("I2").Value, ("0000"))
'so holt von Tabelle rein, auch Format mit TAB-Taste direkt rein !
Label1.Caption = Worksheets("Prov-Blatt").Range("I4")
End If
End Sub
Vielleicht hat jemand einen Tip, wie das Regeln kann.
Gruß Walter