Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1140to1144
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Textbox mit Bindestrichen
abu
Hallo Zusammen,
hab da mal eine Frage. Arbeite mit einer Userform in der ich eine Textbox habe. Kann ich diese so aendern, dass wenn sich die Userform oeffnet da automatisch Bindestriche an bestimmten positionen stehen? Also 2 Stellen zum eingeben dann Bindestrich wieder 2 Stellen und wieder Bindestrich und dann 4 Stellen. Und dann soll das auch noch so sein, dass wenn ich die ersten 2 Stellen eingegeben habe dann automatisch nach dem Bindestrich weiterschreiben kann.
Kann man das mit einer Textbox umsetzen oder muss ich basteln mit 3 Boxen?
Gruss
abu
Das müsste man selbst programmieren
02.03.2010 14:13:40
NoNet
Hallo abu,
als Vorgabe gibt es das in Access-Datenbanken (in Formularen), jedoch nicht in Textboxen in Excel.
Man könnte das per Private Sub TextBox1_KeyPress (Ereignis der Textbox) selbst programmieren, ist aber etwas aufwändig.
Vielleicht macht sich ja ein anderer Helfer hier im Forum diese Mühe... ;-)
Gruß, NoNet
AW: Textbox mit Bindestrichen
02.03.2010 14:22:06
selli
hallo abu,
warum benutzt du nicht der einfachheit wegen 3 textboxen?
gruß selli
AW: Textbox mit Bindestrichen
02.03.2010 15:23:56
abu
Hallo Selli,
ja das ist Plan B wenn es keine andere Loesung gibt. Allerdings muessen die 3 Boxen ja dann auch wieder zusammengefuegt werden um sie in die Zelle zu schreiben und auseinandergebroeselt werden um sie wieder in die Boxen zu laden. Da das ja auch einen gewissen Aufwand darstellt, habe ich mir gedacht das es vllt. auch anders und schoener geht.
Kannst du mir vllt. ein Beipielcode nennen um sie zusammenzufuegen und wieder auseinanderzubroeseln?
Ausserdem kann ich einstellen wie viele Stellen eine Box haben darf aber wie stelle ich ein das er dann automatisch in die naechste Box springt ohne Tab zu benutzen?
Gruss
abu
Anzeige
AW: Textbox mit Bindestrichen
02.03.2010 16:06:28
Josef
Hallo abu,

was du suchst, nennt sich MaskedTextBox, das gibt's in VB aber nicht in VBA.
Hier eine Spielerei, je nach dem, welche Daten die eingegeben werden sollen, könnte man das noch ausbauen.
https://www.herber.de/bbs/user/68324.xls

Gruß Sepp

AW: Textbox mit Bindestrichen
02.03.2010 16:30:40
abu
Hallo Sepp,
die Beipieldatei sieht doch super aus (ausser die Unterstriche). Jetzt die frage was ist der Unterschied zwischen VB und VBA? Schrenkt mich das irgenwie ein oder kann ich das nicht in meine Userform einbauen? Wie bekomme ich die unterstriche weg?
Gruss
abu
Anzeige
AW: Textbox mit Bindestrichen
02.03.2010 17:07:07
Josef
Hallo abu,

VisualBasic(for)Applications ist ein Ableger von Visual Basic und stellt nicht alle Methoden/Eigenschaften und Steuerelemente zur Verfügung wie VB oder VB.net. VBA ist eben speziell für die Verwendung innerhalb von Anwendungen, wie eben Excel, konzipiert.
Ich hab das Beispiel ein wenig ausgebaut. Du kannst die Vorgabe im Code ändern, siehe die "Const"-Anweisungen. Man muss allerdings eine Monospace-Schriftart verwenden, sonst geht's in die Hose!
https://www.herber.de/bbs/user/68327.xls

Gruß Sepp

Anzeige
AW: Textbox mit Bindestrichen
03.03.2010 10:07:37
abu
Hallo Sepp,
vielen dank fuer deine Hilfe. Funktioniert 1a.
Gruss
abu
schoene Loesung Danke Sepp owT
02.03.2010 17:12:09
hary
.
finde ich auch, aber...
02.03.2010 17:16:29
ChristianM
... wenn man schnell hintereinander Zahlen eingibt, werden die Bindestriche überschrieben.
Die Idee ist trotzdem gut
Gruß
Christian
AW: @ Christian
02.03.2010 17:20:44
hary
Hallo Christian
sowas hatte ich auch mal.
Nimm dann das Keydown Ereigniss. Da kannste auch den Finger auf der Taste lassen.
gruss hary
jo, mit KeyDown ist's ok, Merci o.T
02.03.2010 17:25:08
ChristianM
AW: Textbox mit Bindestrichen
02.03.2010 16:19:40
selli
hallo abu,
zum zusammenfügen ganz einfach:
tb = UserForm1.TextBox1 & "-" & UserForm1.TextBox2 & "-" & UserForm1.TextBox3
auseinanderbröseln brauchst du doch nicht. du hast doch die einzelnen werte bzw. texte in der jeweiligen textbox schon vereinzelt.
die maximale länge kannst du bsp. mit der eigenschaft maxlength vorgeben:
UserForm1.TextBox1.MaxLength = 4
gruß selli
Anzeige

303 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige