Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
636to640
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
636to640
636to640
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Textbox Leerzeichen

Textbox Leerzeichen
18.07.2005 11:19:49
Walter
Guten Morgen,
habe folgendes Makro:

Private Sub TextBox1_KeyUp(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If IsNumeric(TextBox1) = False And TextBox1 <> "" Then
MsgBox " Sie dürfen nur Ziffern eingeben", _
vbCritical, "Error !!!"
TextBox1 = Left(TextBox1, Len(TextBox1) - 1)
TextBox1 = ""
TextBox1.SetFocus
With TextBox1
.SetFocus
.SelStart = 0
.SelLength = Len(.Text)
End With
End If
End Sub


Private Sub TextBox1_AfterUpdate()
Dim EingabeText As String
If Len(TextBox1) > 4 Then
Beep
MsgBox "        Achtung " & Chr(13) & Chr(13) & _
"Verkäufer Nr. ist 4 stellig," & Chr(13) & Chr(13) & _
"bitte NEU eingeben !!!" & Chr(13), vbCritical
TextBox1 = "0000"
TextBox1.SetFocus
With TextBox1
.SetFocus
.SelStart = 0
.SelLength = Len(.Text)
End With
Else
ThisWorkbook.Worksheets("Kulanzblatt-VK").Range("Y10") = TextBox1.Text
TextBox1 = Format(Worksheets("Kulanzblatt-VK").Range("Y10").Text, ("000"))
'so holt von Tabelle rein, auch Format mit TAB-Taste direkt rein !
Label1.Caption = ThisWorkbook.Worksheets("Kulanzblatt-VK").Range("Y11")
End If
End Sub

Funktioniert alles Prima aber ich habe festgestellt, wenn ich ein Leerzeichen
eingebe, gibt es eine Fehlermeldung.
Kann man irgendwie nur die Möglichkeit der Buchstaben oder Zahleneingabe
veranlassen ?
Danke im voraus
gruß Walter

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Textbox Leerzeichen
18.07.2005 11:56:23
Ralf
Hi Walter,
2 Vorschläge auf die Schnelle (Variante 2 ist zu bevorzugen):
1.
Private Sub TextBox1_KeyUp(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
Neueingabe:
If IsNumeric(TextBox1) = False And TextBox1 "" Then
MsgBox " Sie dürfen nur Ziffern eingeben", _
vbCritical, "Error !!!"
Textbox1 = ""
GoTo Neueingabe
...
...
...
usw...
2.
Besser wäre aber, in dieser Prozedur den Keycode zu prüfen. Zahlen liegen zwischen 96 und 105, das Leerzeichen ist 32. Die Prozedur könnte dann so aussehen:
If Keycode >= 96 and Keycode 'Code für den Fall dass zulässige Eingaben erfolgten
....
Ciao, Ralf
Anzeige
Danke o.t.
18.07.2005 12:13:59
Walter
Hallo Ralf,
Danke für die schnelle Hilfe.
Funktioniert beides!
Gruß Walter
o.t.
18.07.2005 12:29:34
closed

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige