ASCII Leerzeichen in Excel VBA verwenden
Schritt-für-Schritt-Anleitung
Um in einer Textbox in Excel VBA ein Leerzeichen zuzulassen, musst du den ASCII-Code für das Leerzeichen, der 32 beträgt, in deinem Code berücksichtigen. Hier ist eine einfache Schritt-für-Schritt-Anleitung:
-
Öffne den Visual Basic for Applications (VBA) Editor in Excel.
-
Füge eine Textbox in dein UserForm ein.
-
Verwende den folgenden Code in der entsprechenden Subroutine:
Private Sub TextBox2_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
Select Case KeyAscii
Case 48 To 57, 65 To 90, 97 To 122, 32 ' Zahlen, Buchstaben und Leerzeichen zulassen
Case Else
KeyAscii = 0
MsgBox "Sonderzeichen und Umlaute sind hier nicht erlaubt.", vbCritical, "Bitte die Eingabe prüfen!"
End Select
End Sub
-
Teste die Textbox, um sicherzustellen, dass das Leerzeichen korrekt eingegeben werden kann.
Häufige Fehler und Lösungen
Alternative Methoden
Wenn du mehr Kontrolle über die Eingabe in einer Textbox benötigst, kannst du auch die KeyDown
-Ereignisprozedur nutzen:
Private Sub TextBox2_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = vbKeySpace Then
' Leerzeichen zulassen
ElseIf (KeyCode < 48 Or KeyCode > 57) And _
(KeyCode < 65 Or KeyCode > 90) And _
(KeyCode < 97 Or KeyCode > 122) Then
KeyCode = 0 ' Anderes Zeichen blockieren
MsgBox "Nur Zahlen, Buchstaben und Leerzeichen sind erlaubt."
End If
End Sub
Praktische Beispiele
Angenommen, du möchtest, dass in deiner Textbox sowohl Zahlen als auch Buchstaben sowie Leerzeichen eingegeben werden können. Der oben gezeigte Code erfüllt diese Anforderung. Hier ist ein Beispiel, wie du den Code in einem UserForm verwenden kannst:
- Erstelle ein neues UserForm in deinem VBA-Projekt.
- Füge eine Textbox und einen Button hinzu.
-
Weise dem Button den folgenden Code zu, um die Eingabe zu überprüfen:
Private Sub CommandButton1_Click()
MsgBox "Eingegebener Text: " & TextBox2.Text
End Sub
Jetzt kannst du eingeben, was du möchtest, und auf den Button klicken, um den Text anzuzeigen.
Tipps für Profis
- Nutze die ASCII-Tabelle (ASCII-Tabelle Excel), um schnell die Codes für andere Zeichen zu finden.
- Wenn du häufig mit besonderen Zeichen arbeitest, denke daran, eine eigene Funktion zu erstellen, die die Eingabe überprüft und die ASCII-Codes automatisch verarbeitet.
- Verwende die
Chr
-Funktion in VBA, um Zeichen anhand ihrer ASCII-Codes zu generieren. Zum Beispiel: MsgBox Chr(32)
zeigt ein Leerzeichen an.
FAQ: Häufige Fragen
1. Was ist der ASCII-Code für ein Leerzeichen?
Der ASCII-Code für ein Leerzeichen ist 32.
2. Wie kann ich andere ASCII-Zeichen in Excel VBA verwenden?
Du kannst die ASC
-Funktion verwenden, um den ASCII-Code eines Zeichens zu erhalten, und die Chr
-Funktion, um ein Zeichen anhand seines ASCII-Codes zu generieren.
3. Wo finde ich eine vollständige ASCII-Tabelle?
Du kannst eine ASCII-Tabelle online finden oder in der Hilfe von Excel nachsehen, um die Codes für verschiedene Zeichen zu überprüfen.