Registriert seit: 13.01.2021
Version(en): 2016
Hallo zusammen
Ich habe in einer UF eine Textbox (bzw mehrere). Diese sind auf 4 Zahlen begrenzt. Ich will über einen Button, einen Bindestrich an der 3.Stelle einfügen bzw. auch wieder löschen.
entweder 1234
oder 123-4
oder [b]1234[/b]
Meine Versuche sind bis jetzt kläglich gescheitert. Vielleicht kann mir jemand dabei helfen. Das wäre toll. Mir hilft schon ein Lösungsansatz
LG
Michael
Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
Hallöchen,
Du kannst im VBA genau wie mit Formeln auf einem Blatt Text in LINKS, RECHTS usw. trennen, z.B.
Dim texter$
texter = Left(TextBox1.text, 3) + "-" + Right(TextBox1.text, 1)
Sind Deine Texte zuweilen kürzer, solltest DU vorher die Länge prüfen.
(Hier geht übrigens "+" statt "&", weil alles Text ist)
. \\\|/// Hoffe, geholfen zu haben.
( ô ô ) Grüße, André aus G in T
ooO-(_)-Ooo (Excel 97-2019+365)
Registriert seit: 12.10.2014
Version(en): 365 Insider (64 Bit)
Moin Michael!
Eine Textbox enthält … Text.
Zitat:Diese sind auf 4 Zahlen begrenzt.
Wenn, dann (s.o.) vier Ziffern.
Das ist keine Klugscheißerei, sondern ein berechtigter Hinweis auf einen von vielen Fallstricken, die bei Verwendung von UserForms auftreten.
Gehen wir also "einfach" mal davon aus, dass Du aktuell dafür gesorgt hast, dass tatsächlich 4 Ziffern im String erscheinen und ausschließlich Ziffern eingegeben werden können (z.B. per KeyDown):
Code:
Private Sub CommandButton1_Click()
If InStr(TextBox1, "-") Then
TextBox1 = Replace(TextBox1, "-", "")
Else
TextBox1 = Format(TextBox1, "000-0")
End If
End Sub
Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag.
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Registriert seit: 13.01.2021
Version(en): 2016
Danke an alle (Besonders an Ralf, der mir schon so oft aus der Patsche geholfen hat)
Genau das habe ich gesucht.
LG an Alle
Michael