Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Textboxeingabe nur ganze zahlen

Textboxeingabe nur ganze zahlen
16.02.2005 18:56:38
Andreas
Hallo zusammen,
ich habe in einer UserForm eine Textbox, in der ich nur ganze Zahlen zulassen möchte.
Die Textbox´n sind auf maximale Stellen begrenzt.
Dies habe ich mit Maxlength in den Eigenschaften des VisualBasicEditor geregelt.
Gibt es da auch einen Code, oder ist das die beste Lösung.
Textbox1 4 Stellen zulassen (nur ganze Zahlen zulassen!)
Textbox2 3 Stellen zulassen (nur ganze Zahlen zulassen!)
Textbox3 2 Stellen zulassen (nur ganze Zahlen zulassen!)
Mein Code:

Private Sub TextBox1_Change()
Range("Daten!d116") = CInt(TextBoxBLOL)
End Sub

Jetzt zu meiner Frage:
Wenn ich auf entfernen gehe (also eine leere Textbox habe), bringt er mir eine Fehlermeldung.
Wie muß ich denn den Code verändern, damit ich nur ganze Zahlen zulassen kann und keine Kommas oder Buchstaben.
Danke im voraus.
Grüße
Andy
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Textboxeingabe nur ganze zahlen
ransi
hallo andy
MaxLenght ist gut.
Wenn du die werte in den Boxen von Hand eingibst geht die beschränkung auf zahlen z.B.
so:

Private Sub TextBox1_Change()
If Not IsNumeric(TextBox1) And Not TextBox1 = "" Then _
TextBox1 = Left(TextBox1.Text, Len(TextBox1.Text) - 1)
End Sub

ransi
Anzeige
AW: Textboxeingabe nur ganze zahlen
16.02.2005 19:33:34
simon
hallo andy,
probiers mal mit dem code, einfach in die eigenschaft keyPress einsetzten, es werden nur die zahlen von 0-9 zugelassen

Private Sub textbox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If Chr(KeyAscii) Like "[0-9]" = False Then KeyAscii = 0
End Sub

gruß simon
Anzeige
AW: Textboxeingabe nur ganze zahlen
16.02.2005 21:29:01
Andreas
Danke
funktioniert gut...
Gruß Andy
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Textbox-Eingabe für ganze Zahlen in Excel


Schritt-für-Schritt-Anleitung

Um in einer UserForm in Excel nur ganze Zahlen in einer TextBox zuzulassen, kannst du folgende Schritte befolgen:

  1. Öffne den Visual Basic for Applications (VBA) Editor:

    • Drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Füge eine UserForm hinzu:

    • Klicke auf Einfügen und wähle UserForm.
  3. Füge TextBoxen hinzu:

    • Ziehe die TextBoxen auf die UserForm und benenne sie entsprechend (z.B. TextBox1, TextBox2, etc.).
  4. Einstellungen für die TextBoxen:

    • Stelle in den Eigenschaften der TextBoxen die MaxLength auf die gewünschte Anzahl an Stellen ein (z.B. 4 für TextBox1).
  5. Code zum Zulassen nur ganzer Zahlen:

    • Füge den folgenden Code in das Codefenster der UserForm ein:
    Private Sub TextBox1_Change()
       If Not IsNumeric(TextBox1) And Not TextBox1 = "" Then
           TextBox1 = Left(TextBox1.Text, Len(TextBox1.Text) - 1)
       End If
    End Sub

    Dieser Code stellt sicher, dass nur ganze Zahlen eingegeben werden können.

  6. Erstelle einen KeyPress-Event:

    • Um sicherzustellen, dass nur die Ziffern 0-9 eingegeben werden, füge den folgenden Code für das KeyPress-Ereignis hinzu:
    Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
       If Chr(KeyAscii) Like "[0-9]" = False Then KeyAscii = 0
    End Sub

Häufige Fehler und Lösungen

  • Fehlermeldung bei leeren TextBoxen:

    • Wenn du versuchst, eine leere TextBox zu verarbeiten, kann eine Fehlermeldung auftreten. Um dies zu umgehen, stelle sicher, dass du im Code eine Überprüfung auf leere Eingaben vornimmst.
  • Eingabe von Kommas oder Buchstaben:

    • Der bereitgestellte KeyPress-Code verhindert, dass Buchstaben oder Kommas eingegeben werden. Stelle sicher, dass dieser Code korrekt implementiert ist.

Alternative Methoden

Falls du Excel nur positive Werte zulassen möchtest, kannst du den Code entsprechend anpassen:

Private Sub TextBox1_Change()
    If Not IsNumeric(TextBox1) Or Val(TextBox1) < 0 Then
        TextBox1 = ""
    End If
End Sub

Dies stellt sicher, dass nur positive ganze Zahlen akzeptiert werden.


Praktische Beispiele

  • Beispiel 1: Eingabe von 4-stelligen ganzen Zahlen
  • Beispiel 2: Eingabe von 3-stelligen ganzen Zahlen
  • Beispiel 3: Eingabe von 2-stelligen positiven Werten

Diese Beispiele kannst du leicht umsetzen, indem du die Anzahl der Stellen in der MaxLength-Eigenschaft der jeweiligen TextBox anpasst.


Tipps für Profis

  • Verwende InputMask: Überlege, eine Eingabemaske zu verwenden, um das Format der Eingabe zu steuern.
  • Regelmäßige Überprüfung: Stelle sicher, dass der Code regelmäßig überprüft wird, wenn neue TextBoxen hinzugefügt werden.
  • Testen in verschiedenen Excel-Versionen: Teste den Code in verschiedenen Excel-Versionen, um sicherzustellen, dass er überall funktioniert.

FAQ: Häufige Fragen

1. Was sind ganze Zahlen?
Ganze Zahlen sind nicht-negative oder negative Zahlen ohne Dezimalstellen, z.B. -1, 0, 1, 2, 3.

2. Wie kann ich sicherstellen, dass nur ganze Zahlen in Excel eingegeben werden?
Verwende die oben beschriebenen VBA-Codes, um die Eingabe in TextBoxen zu kontrollieren und nur ganze Zahlen zuzulassen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige