AW: Textbox nur bestimmte Formatierung zulassen
27.11.2008 23:30:00
Roland
Hallo Karsten, hallo Daniel,
wenn die Eingabeprüfung wirklich zwingend schon bei der Eingabe erfolgen muss (sollte man sich genau überlegen, da kann man die Nutzer unheimlich ärgern), müsste es das tun:
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
Select Case TextBox1.TextLength
Case 7
If Left$(TextBox1.Text, 1) = "T" And _
IsNumeric(Mid(TextBox1.Text, 2, 5)) And _
Not IsNumeric(Right$(TextBox1.Text, 1)) Then Cancel = False Else Cancel = True
Case Else: Cancel = True
End Select
End Sub
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
Select Case TextBox1.TextLength
Case 0
If Not KeyAscii = 84 Then KeyAscii = 0
Case 1 To 5
If (KeyAscii 57) Then KeyAscii = 0
Case 6
If (KeyAscii > 47 And KeyAscii
Der Haken dabei ist, dass der Nutzer die Textbox nur noch nach ordnungsgemäßer und vollständiger Eingabe verlassen kann. Bei dem Ansatz ist es egal, ob der letzte Buchstabe groß oder klein ist.
Gruß
Roland Hochhäuser