HERBERS Excel-Forum - das Archiv

Thema: In TextBox nach 2 Zeichen ein Minus einsetzen

In TextBox nach 2 Zeichen ein Minus einsetzen
Markus Klar
Hallo zusammen,

ich habe auf einem Excel-Sheet eine TextBox, bei der ich nach Eingabe von 2 Zeichen ein Minus-Zeichen automatisch einsetzen lassen möchte.
If TextBox1.TextLength = 2 Then

TextBox1.Text = TextBox1.Text & "-"
End If


Das funktioniert leider nicht wirklich gut, da ich den Inhalt der TextBox jetzt nicht mehr komplett löschen kann, es bleiben immer 2 Zeichen stehen.
Kann mir bitte jemand den Knoten im Kopf lösen?

Vielen Dank und VG
Markus
AW: In TextBox nach 2 Zeichen ein Minus einsetzen
Onur
Mit 3 Zeilen Code ist das nicht zu lösen? Wo ist der Rest (die Datei, der restliche Code) ?
AW: In TextBox nach 2 Zeichen ein Minus einsetzen
Beverly
Hi Markus,

z.B. so:

Private Sub TextBox1_KeyUp(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)

If Len(TextBox1) > 2 Then TextBox1 = Left(TextBox1, 2) & "-" & Mid(TextBox1, 3)
End Sub


Bis später
Karin

Link zur Homepage: https://excel-inn.de/
AW: In TextBox nach 2 Zeichen ein Minus einsetzen
Kuwer
Hallo Markus,

ersetze Dein momentanes Makro, welches auch immer das gerade ist, durch folgendes:

Private Sub TextBox1_KeyUp(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)

If KeyCode = 8 Then
If TextBox1.TextLength = 2 Or TextBox1.TextLength = 3 Then
TextBox1.Text = Left(TextBox1.Text, 1)
End If
Else
If TextBox1.TextLength = 2 Then
TextBox1.Text = TextBox1.Text & "-"
End If
End If
End Sub


Gruß, Uwe