Eingabe negativer Zahlen in eine Excel-Textbox
Schritt-für-Schritt-Anleitung
Um sicherzustellen, dass Benutzer in einer Excel-Textbox negative Zahlen eingeben können, musst Du den Code der UserForm anpassen. Hier sind die Schritte, die Du befolgen solltest:
- Öffne die Excel-Datei und gehe in den VBA-Editor (Alt + F11).
- Suche die UserForm, in der sich die Textbox befindet.
- Wähle die TextBox aus, für die Du die Eingabe einschränken möchtest.
- Füge den folgenden Code in das Codefenster der TextBox ein:
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If InStr("1234567890-," & Chr$(8), Chr$(KeyAscii)) = 0 Then
KeyAscii = 0
End If
End Sub
- Dieser Code erlaubt es, positive und negative Zahlen sowie das Komma einzugeben. Das Zeichen
-
wird durch den ASCII-Code 45 repräsentiert und ist somit erlaubt.
Häufige Fehler und Lösungen
Alternative Methoden
Eine andere Möglichkeit, die Eingabe auf Zahlen zu beschränken, ist die Verwendung von Datenvalidierung in Excel selbst. Hier ist, wie Du das tun kannst:
- Wähle die Zelle aus, die Du validieren möchtest.
- Gehe zu
Daten
> Datenüberprüfung
.
- Wähle
Zahl
und definiere die gewünschten Bedingungen (z. B. Ganzzahlen, größer als oder gleich -999).
Diese Methode ist einfacher, erfordert jedoch keinen VBA-Code.
Praktische Beispiele
Wenn Du eine UserForm mit einer TextBox für die Eingabe von negativen Zahlen erstellst, könnte das so aussehen:
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If InStr("1234567890-," & Chr$(8), Chr$(KeyAscii)) = 0 Then
KeyAscii = 0
End If
End Sub
Hier erlaubt die TextBox die Eingabe von Zahlen, dem Minuszeichen und Kommas. Du kannst die TextBox auch so gestalten, dass sie die Eingabe automatisch formatiert, wenn der Benutzer die Zahl eingibt.
Tipps für Profis
- Verwende
Chr$(8)
: Dieser Befehl erlaubt es dem Benutzer, die Rücktaste zu verwenden, um Eingaben zu löschen.
- Testen: Teste die UserForm gründlich, um sicherzustellen, dass alle gewünschten Eingaben korrekt verarbeitet werden.
- Fehlerbehandlung: Erwäge, eine Fehlerbehandlung hinzuzufügen, um den Benutzern hilfreiche Fehlermeldungen anzuzeigen, wenn sie ungültige Eingaben machen.
FAQ: Häufige Fragen
1. Wie kann ich sicherstellen, dass nur ganze negative Zahlen eingegeben werden?
Du kannst den Code so anpassen, dass er nur ganze Zahlen zulässt, indem Du die Eingabe entsprechend überprüfst.
2. Funktioniert das auch in Excel 365?
Ja, der VBA-Code ist mit Excel 365 kompatibel, solange Du die UserForms korrekt einrichtest.