Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
804to808
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
804to808
804to808
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Nummerformat in UF

Nummerformat in UF
25.09.2006 09:15:43
Martin
Guten Morgen,
In eine UF will ich alles Mögliche an Infos eingeben, u.a. eine 6-Stellige Nummer (z.B. 123456). Die Nummer wird in TextBox3 eingegeben und ich möchte, wenn man zum nächsten TextBox geht, dass die Nummer so aussieht 123/45/6. Auf einem normalen Tabellenblatt erreich ich dies in dem ich Sonderformat ?"/"?"/"? wähle.
Vermutlich muß ich die Nummer im Bereich
Private Sub TextBox3_Change()
formatieren, aber wie?

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Nummerformat in UF
25.09.2006 09:31:39
Luschi
Hallo Martin,
so geht's:
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Me.TextBox1.Value = Format(Me.TextBox1.Text, "000\/00\/0")
End Sub
Nun mußt Du nur noch dafür sorgen, daß nur Zahlen (und davon genau 6 Stück) eingegeben werden können/müssen.
Gruß von Luschi
aus klein-Paris
AW: Nummerformat in UF
25.09.2006 09:44:48
Martin
Hallo!
das funktioniert prima ............... aber ...................
es kann schon vorkommen, dass man eine 5-Stellige Nummer eingeben muss. Gibt es eine Möglichkeit die Zahl der Ziffer in einer Nummer zu zählen? Dann würde ich so vorgehen:

Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If (Eingabe in TB3 = 5 Ziffern) Then
Me.TextBox1.Value = Format(Me.TextBox1.Text, "00\/00\/0")
Else
Me.TextBox1.Value = Format(Me.TextBox1.Text, "000\/00\/0")
End If
End Sub

Anzeige
AW: Nummerformat in UF
25.09.2006 10:13:57
Luschi
Hallo Martin,
probier es mal so:
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Dim i As Integer, s As String
i = Len(Trim(Me.TextBox1.Text))
If i = 5 Then
s = "00\/00\/0"
Else
s = "000\/00\/0"
End If
Me.TextBox1.Value = Format(Me.TextBox1.Text, s)
End Sub
Gruß von Luschi
aus klein-Paris
AW: Nummerformat in UF
25.09.2006 10:38:09
Martin
Hallo Luschi,
das klappt super nur es gibt ein kleines Problem. Wenn ich TextBox3 verlasse wird die Nummer wie gewunscht umgewandelt (mit 4, 5 oder 6 Ziffern getrennt durch "/"). Wenn ich aber später mit der Tab-Taste durch die UF navigiere, zählt Excel die / als Ziffern mit und wandelt die Nummer erneut um meistens in die 6-Stellige Variation. Ich lade die Datei mit hoch, vielleicht fällt dir dazu was ein. Bin dankbar für jede Hilfe
Gruß aus Celle
https://www.herber.de/bbs/user/36977.xls
Anzeige
AW: Nummerformat in UF
25.09.2006 11:12:55
Luschi
Hallo Martin,
mach es jetzt so:
Private Sub TextBox3_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Dim i As Integer, s1 As String, s2 As String
s1 = Trim(Me.TextBox3.Text)
''alle "/"-Zeichen entfernen
s1 = Replace(s1, "/", "", 1, -1)
i = Len(s1)
Select Case i
Case 0 To 3: ''nichts machen
Case 4:    s2 = "0\/00\/0"
Case 5:    s2 = "00\/00\/0"
Case Else: s2 = "000\/00\/0"
End Select
Me.TextBox3.Value = Format(s1, s2)
End Sub
Gruß von Luschi
aus klein-Paris
AW: Nummerformat in UF
25.09.2006 11:25:32
Luschi
Hallo Martin,
so erzwingt man, daß nur Zahlen, die Lösch- und Cursortasten Links/Rechts in der TextBox3
eingegeben werden können:

Private Sub TextBox3_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
Select Case KeyCode
Case vbKey0 To vbKey9, vbKeyBack, vbKeyDelete, vbKeyLeft, vbKeyRight
Case Else
KeyCode = 0
End Select
End Sub
Gruß von Luschi
aus klein-paris
Anzeige
AW: Korrektur
25.09.2006 11:31:30
Luschi
Hallo Martin,
die Tab- und Enter-Taste müssen natürlich auch durchgelassen werden, sonst
kann man das Feld nur mit der Maus verlassen.>pre>

Private Sub TextBox3_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
Select Case KeyCode
Case vbKey0 To vbKey9, vbKeyBack, vbKeyDelete, vbKeyLeft, vbKeyRight, vbKeyTab, vbKeyReturn
Case Else
KeyCode = 0
End Select
End Sub
Gruß von Luschi
azs klöein-Paris

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige