Text prüfen und markieren

Wenn die Eingabedaten des Anwenders von der Anwendung geprüft werden, sollte bei negativem Prüfausgang eine entsprechende Fehlermeldung erzeugt und die fehlerhafte Eingabe im Textfeld markiert werden, damit der Anwender gleich weiß, wo eine Änderung erfolgen soll.

Ein solcher Rücksprung in das entsprechende Textfeld kann mit folgenden Codezeilen erfolgen:

Textbox1.GetFocus

TextBox1.SelStart = 0

TextBox1.SelLength = 100

Zunächst muß das Steuerelement den Fokus erhalten, dann wird das Startzeichen für die Markierung vorgegeben und dann die maximale Anzahl der Zeichen, die markiert werden sollen. Die Anzahl der Zeichen darf geringer sein als angegeben.

Abbildung 198, Text gezielt markieren

Private Sub CommandButton1_Click()

If Len(TextBox1.Text) > 5 Then

    MsgBox "Text darf max. 5 Zeichen lang sein, bitte korrigieren!"

    TextBox1.SetFocus

    TextBox1.SelStart = 5            ’ Startpunkt wird gekennzeichnet

    TextBox1.SelLength = 100     ’Länge wird selektiert

    Exit Sub

End If

Unload Me

End Sub

In obigem Beispiel wird die Eingabe in das Textfeld auf Einhaltung der Maximallänge geprüft.

Ist der Text zu lang, wird der überschüssige Textanteil markiert, so dass der Anwender bequem korrigieren kann. Die Prozedur wird verlassen, ohne dass die Form geschlossen wird.
Erst wenn die Eingabe korrekt ist, wird die Form mit unload me geschlossen.

Beispielmappe Textbox, Text gezielt markieren.xlsm

More:

Listbox