Datum in VBA formatieren
Schritt-für-Schritt-Anleitung
Um das Datum in VBA korrekt zu formatieren, kannst Du den Format
-Befehl verwenden. Hier sind die Schritte, um das Datum in Deinem Excel-Sheet im gewünschten Format TT.MM.JJ
auszugeben:
-
Öffne den VBA-Editor durch Drücken von ALT + F11
.
-
Füge den folgenden Code in das entsprechende Modul ein:
Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo Errh
Application.EnableEvents = False
If Not Application.Intersect(Target, Range("A:M")) Is Nothing Then
Range("M1").Value = "Kalkuliert von " & Application.UserName & " am " & Format(Now, "dd.MM.YY hh:mm")
End If
Errh:
Application.EnableEvents = True
End Sub
-
Schließe den VBA-Editor und teste die Funktion, indem Du eine Änderung in den Zellen A bis M vornimmst.
Häufige Fehler und Lösungen
-
Fehler beim Kompilieren: Projekt oder Bibliothek nicht gefunden
Dieser Fehler kann auftreten, wenn einige VBA-Bibliotheken nicht aktiviert sind. Gehe zu Extras > Verweise
im VBA-Editor und deaktiviere alle nicht vorhandenen Bibliotheken.
-
Das Datum wird nicht im gewünschten Format angezeigt
Stelle sicher, dass Du den Format
-Befehl korrekt verwendest, wie im Beispiel gezeigt. Wenn das Datum weiterhin falsch angezeigt wird, überprüfe die regionalen Datumseinstellungen Deines Systems.
Alternative Methoden
Eine alternative Methode zur Datumformatierung in Excel wäre, die Zelle direkt als Datum zu formatieren:
- Wähle die Zelle aus, die das Datum enthalten soll.
- Klicke mit der rechten Maustaste und wähle
Zellen formatieren
.
- Wähle unter
Zahlen
die Kategorie Datum
und passe das Format an.
Diese Methode kann hilfreich sein, wenn Du das Datum nicht über VBA formatieren möchtest.
Praktische Beispiele
Hier sind einige praktische Beispiele für die Verwendung von vba now format
:
-
Aktuelles Datum ohne Uhrzeit:
Range("A1").Value = Format(Now, "dd.MM.YY")
-
Aktuelles Datum mit Uhrzeit:
Range("B1").Value = Format(Now, "dd.MM.YY hh:mm")
-
Datum aus einer anderen Zelle umdrehen:
Dim myDate As Date
myDate = Range("C1").Value
Range("D1").Value = Format(myDate, "dd.MM.YY")
Tipps für Profis
- Nutze die
VBA Format
-Funktion, um verschiedene Datumsformate je nach Bedarf zu erstellen.
- Achte darauf, dass Du die richtigen Datentypen in Deinen Variablen verwendest, um unerwartete Fehler zu vermeiden.
- Wenn Du mit mehreren Benutzern arbeitest, teste den Code auf verschiedenen Systemen, um sicherzustellen, dass keine Komplikationen auftreten.
FAQ: Häufige Fragen
1. Wie kann ich das Datum automatisch aktualisieren?
Du kannst die Now
-Funktion verwenden, um das Datum und die Uhrzeit automatisch zu aktualisieren, wenn eine Änderung in den definierten Zellen stattfindet.
2. Was mache ich, wenn ich das Datumsformat ändern möchte?
Ändere einfach den Format-String im Format
-Befehl, z.B. von "dd.MM.YY hh:mm"
zu "MM.dd.YY"
für das Format MM.TT.JJ
.
3. Warum funktioniert mein VBA-Code nicht?
Überprüfe die aktivierten Verweise im VBA-Editor und stelle sicher, dass alle erforderlichen Bibliotheken vorhanden sind.