Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Userform Zahleneingabe
#1
Hallo Zusammen,

in der Userform kann man über die Textbox ein Eingabefeld generieren, soweit klar.
Ich möchte allerdings eine Eingabe hinbekommen die nur für Zahlen ist und auch immer die gleiche Anzahl an Zahlen aufweisen kann. Ich würde mir wünschen, dass das ganze aussieht wie ein Überweisungsträger.
[
Bild bitte so als Datei hochladen: Klick mich!
]
Ist so etwas in der Userform möglich?

Vielen Dank im voraus!
Antworten Top
#2
Moin,
Jein, das ist (nicht) möglich. Weil ...
  • Eine IBAN besteht nicht nur aus Zahlengruppen
  • Es sind nicht immer die gleichen Anzahl von Zahlen sondern von Ziffern (sorry, aber Excel lebt nun einmal von der Genauigkeit)
  • Es sind nicht nur 1 sondern mehrere Textfelder
  • Und wenn das geklärt ist, sollte das gehen.
Beste Grüße
  Günther

Excel-ist-sexy.de
  …schau doch mal rein!
Der Sicherheit meiner Daten wegen lade ich keine *.xlsm bzw. *.xlsb- Files mehr herunter! -> So geht's ohne!
Antworten Top
#3
Hallo,

teste einmal diesen Code in der UserForm:


Code:
Private Sub TextBox1_Change()
   With TextBox1
       If Len(.Value) = 4 Then .Value = .Value & " "
       'Debug.Print .Value, Len(.Value), Len(.Value) - InStrRev(.Value, " ")
       If Len(.Value) - InStrRev(.Value, " ") = 4 Then .Value = .Value & " "
   End With
End Sub

Private Sub UserForm_Activate()
   TextBox1.Value = "DE"
End Sub
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
   Select Case KeyAscii
       Case 48 To 57
           TextBox1.BackColor = &H80000005
       Case Else
           TextBox1.BackColor = vbRed
   End Select
End Sub


mfg
Antworten Top
#4
@Fennek:
Sage das mal den Griechen!
Ich habe da letztens mal etwas mit Format(text, "!@@@@ @@@@ …") gemacht.
Aber wie gesagt: die Griechen ticken da anders, und außerdem hat Malta die längste IBAN in Europa (verständlich, bei deren Einwohnern).
:19:
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)
Antworten Top
#5
Ach so:
den lesenswerten Thread findet man hier:
http://www.clever-excel-forum.de/thread-14507.html
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)
Antworten Top
#6
@RPP


an die letzte Diskussion zu IBAN's konnte ich mich gut erinnern und habe auch diese Formatierung getestet. Aber in der UserForm wollte es nicht, das Ergebnis war völlig anderst als erwartet.

mfg
Antworten Top
#7
Dürfte auch eher ins _Exit statt ins _Change gehören.
Otherwise & statt @
(habe noch einiges zu tun, werde dies aber heute noch prüfen)
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)
Antworten Top
#8
Klappt bestens (ohne Griechenland):
Code:
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
TextBox1.Text = Format(TextBox1.Text, "!@@@@ @@@@ @@@@ @@@@ @@@@ @@@@ @@@@")
End Sub
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)
Antworten Top
#9
Hallo zusammen und danke für die vielen Antworten.
Ich glaube das ist etwas aus dem ruder gelaufen, denke ich habe es nicht genau genug beschrieben.
Es werden KEINE IBAN's eingetragen, das ganze soll nur optisch so aussehen. Außerdem möchte ich nur Ziffern und keine Buchstaben damit eintragen.
Mein Zahlencode sieht immer so aus:
00000 - 0 - 00
Ich hatte gehofft, über die Eingabe optisch wie bei einer IBAN könne man das ganze einfach besser eingeben und leichter erkennen.

Viele Grüße!!
Antworten Top
#10
Wenn Du ein wenig Eigeninitiative zeigen würdest, dürftest Du feststellen, dass dieser "aus dem Ruder gelaufene" Thread (empfinde ich übrigens als dreist, dies ohne Sachkenntnis zu behaupten) durchaus Lösungsansätze bietet!
Jetzt bist aber zunächst Du gefordert.

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)
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste