Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
436to440
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
436to440
436to440
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Bestimmte Zahlenwerte für TB zulassen
06.06.2004 20:23:06
Lenny
Hallo zusammen,
wie kann ich ohne eine große if-Abfrage in einer Textbox nur die Eingabe folgender Zahlenwerte: 1, 2, 3, 4, 5, 6, 7, 8.
Es dürfen nur diese Zahlenwerte eingegeben werden.
Gruß
Lenny

15
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bestimmte Zahlenwerte für TB zulassen
Ramses
Hallo
Zum Beispiel so:

Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If Me.TextBox1 <> "" Then
If Not IsNumeric(Me.TextBox1) Then
MsgBox "Texteingabe nicht erlaubt"
Me.TextBox1 = ""
Cancel = True
Exit Sub
End If
Select Case CInt(TextBox1)
Case Is < 1 > 8
MsgBox "Unerlaubter Wert"
Me.TextBox1 = ""
Cancel = True
Exit Sub
End Select
End If
End Sub

Den Code in die Textbox kopieren
Gruss Rainer
AW: Bestimmte Zahlenwerte für TB zulassen
06.06.2004 20:32:40
Josef
Hallo Lenny!
ZB.

Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
Select Case KeyCode
Case 8, 46, 48 To 57, 96 To 105
Case Else
KeyCode = 0
End Select
End Sub

Gruß Sepp
Anzeige
Korrektur!
06.06.2004 20:34:34
Josef
Hallo nochmal!
So stimmt's!

Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
Select Case KeyCode
Case 8, 46, 49 To 56, 97 To 104
Case Else
KeyCode = 0
End Select
End Sub

Gruß Sepp
Hmmm....
Lenny
Korrektur läuft fast so wie ich es haben will, aber ich darf nicht z.B. 88, oder 123 eingeben können; sondern nur die einstellige Zahl 1, 2 ...
Vielleicht hast du ja noch eine Lösung parat.
Gruß
Lenny
AW: Hmmm....
06.06.2004 21:03:02
Josef
Hallo Lenny!

Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If Len(TextBox1) = 0 Then
Select Case KeyCode
Case 49 To 56, 97 To 104
Case Else
KeyCode = 0
End Select
Else
Select Case KeyCode
Case 8, 46
Case Else
KeyCode = 0
End Select
End If
End Sub

Gruß Sepp
Anzeige
SUPER, Danke... o.T.
Lenny
...
Bist du sicher....
Ramses
Hallo Sepp
Das KeyCode Ereignis zu nutzen ist gut,... aber bis du sicher dass du die richtigen Zeichen abfrägst ?
49 - 57 würde doch reichen ?
Die Zahl 1 ergibt doch eigentlich den Code 49 und der Keycode 97 ist doch eigentlich das "a" oder, ... und für was 8 und 46 ?
Gruss Rainer
@Ramses
06.06.2004 21:05:43
Josef
Hallo Rainer!
Bei mir geht ohne "97 To 104" der Ziffernblock nicht!
8 und 46 sind für die Rück- bzw. Entfernen- Taste.
Für das "a" erhalte ich als Rückgabe 65.
Gruß Sepp
Notebook... :-((
Ramses
Hallo Sepp,
Alles klar,... ich arbeite auf meinem Notebook natürlich ohne Nummernblock.
Gruss Rainer
Anzeige
oder anders...
Lenny
wie kann ich die Textlänge der Textbox auf 1 einstellen? (also nur ein Zeichen)
Gruß
Lenny
AW: oder anders...
Ramses
Hallo
probier doch erstmal meinen Code von oben aus und schau mal ob es das wäre.
Gruss Rainer
@ Ramses
Lenny
Bei deinem Code kann ich zwar keine Buchstaben eingeben, aber Zahlenkombinationen sind alle möglich. (ich kann von 0-9 alles eingeben)
Hab jetzt das Programm von Josef übernommen.
Aber trotzdem vielen Danke für deine Hilfe
Gruß
Lenny
Sorry. Fehler erkannt.
Ramses
Hallo
wäre trotzdem flott gewesen ein Feedback zu erhalten.
Gruss Rainer
AW: oder anders...
Frank
Hallo Lenny,
in dem Eigenschaftsfenster der Textbox gibt es den Wert: "Maxlength", hier eine 1 eintragen.
MfG
Frank
Anzeige
Danke.. o.T.
Lenny
...

302 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige