Prüfen von Eingaben im Format TT.MM.JJ in Excel
Schritt-für-Schritt-Anleitung
Um zu prüfen, ob die Eingabe in einer TextBox im Format TT.MM.JJ vorliegt, kannst Du den folgenden VBA-Code verwenden. Dieser Code wird in der UserForm implementiert, die Du in Excel erstellt hast:
-
Öffne die UserForm in Deinem Excel-Projekt.
-
Klicke mit der rechten Maustaste auf die TextBox, in der der Benutzer die Eingabe machen soll.
-
Wähle "Code anzeigen".
-
Füge den folgenden Code in das Code-Fenster ein:
Private Sub DeineTextBox_AfterUpdate()
If Not IsDate(DeineTextBox.Value) Then
MsgBox "Bitte geben Sie das Datum im Format TT.MM.JJ ein."
DeineTextBox.SetFocus
ElseIf Format(CDate(DeineTextBox.Value), "dd.mm.yy") <> DeineTextBox.Value Then
MsgBox "Das Datum entspricht nicht dem Format TT.MM.JJ."
DeineTextBox.SetFocus
End If
End Sub
-
Schließe den VBA-Editor und teste die UserForm.
Mit diesem Code wird überprüft, ob die Eingabe ein gültiges Datum ist und ob es im gewünschten Format vorliegt.
Häufige Fehler und Lösungen
-
Fehler: Eingabe wird als Datum akzeptiert, entspricht aber nicht dem Format.
- Lösung: Stelle sicher, dass Du die Formatierung des Datums im Code korrekt prüfst. Der verwendete
Format
-Befehl sollte das richtige Format zurückgeben.
-
Fehler: Die MsgBox wird nicht angezeigt.
- Lösung: Überprüfe, dass der Code im
AfterUpdate
-Ereignis der TextBox korrekt platziert ist und die TextBox den richtigen Namen hat.
Alternative Methoden
Wenn Du keine UserForms verwenden möchtest, kannst Du auch die Datenvalidierung in Excel nutzen:
- Wähle die Zelle oder den Zellbereich aus.
- Gehe zu "Daten" > "Datenüberprüfung".
-
Wähle "Benutzerdefiniert" und gebe die folgende Formel ein:
=ISTFEHLER(DATUM(WERT(RECHTS(A1;2));WERT(MITTEL(A1;4;2));WERT(LINKS(A1;2)))=A1)
Das sorgt dafür, dass nur gültige Daten im Format TT.MM.JJ eingegeben werden können.
Praktische Beispiele
Hier sind einige Beispiele, wie Du den obigen Code in verschiedenen Szenarien verwenden kannst:
- Beispiel 1: Wenn ein Benutzer 25.12.23 eingibt, wird die MsgBox nicht angezeigt, da das Datum im richtigen Format vorliegt.
- Beispiel 2: Bei der Eingabe von 25.12.2023 wird eine Fehlermeldung angezeigt, da das Format nicht TT.MM.JJ ist.
- Beispiel 3: Bei der Eingabe von 32.13.23 wird ebenfalls eine Fehlermeldung angezeigt, da es kein gültiges Datum ist.
Tipps für Profis
-
Verwende reguläre Ausdrücke: Wenn Du genauere Formatprüfungen durchführen möchtest, kannst Du die RegExp
-Klasse in VBA verwenden, um sicherzustellen, dass das Datum genau dem Format TT.MM.JJ entspricht.
-
Fehlerprotokollierung: Du kannst auch ein Protokoll in einer separaten Tabelle führen, um alle ungültigen Eingaben zu speichern. Das hilft bei der Analyse und Verbesserung der Benutzeroberfläche.
FAQ: Häufige Fragen
1. Frage
Kann ich die Eingabe auch direkt in einer Excel-Zelle überprüfen?
Antwort: Ja, Du kannst die Datenvalidierung nutzen, um sicherzustellen, dass nur gültige Datumswerte im Format TT.MM.JJ eingegeben werden.
2. Frage
Wie kann ich den Code anpassen, wenn ich ein anderes Format benötige?
Antwort: Ändere einfach die Formatierung im Format
-Befehl auf das gewünschte Datumsformat, z.B. dd-mm-yyyy
für das Format TT-MM-JJ.