Datum im Dateinamen speichern: So klappt's mit Excel VBA
Schritt-für-Schritt-Anleitung
Um das Datum im Dateinamen zu speichern, kannst Du folgenden VBA-Code verwenden:
- Öffne Excel und drücke
ALT + F11, um den VBA-Editor zu öffnen.
- Füge ein neues Modul hinzu:
- Rechtsklicke auf "VBAProject (DeineDatei.xlsm)".
- Wähle "Einfügen" und dann "Modul".
- Kopiere den folgenden Code in das Modul:
Sub SpeichernMitDatumUndUhrzeit()
With ThisWorkbook
.Save
.SaveAs "Abrechnung_" & Format(Now, "yyyy-mm-dd, hh.mm") & ".xls"
End With
End Sub
- Füge den folgenden Code in das "DieseArbeitsmappe" Modul ein:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
SpeichernMitDatumUndUhrzeit
End Sub
- Speichere Deine Datei im Makro-fähigen Format (XLSM).
Häufige Fehler und Lösungen
-
Excel stürzt ab: Wenn Excel beim Speichern mit einem Datum im Dateinamen abstürzt, kann dies an Konflikten im Code oder an einer nicht unterstützten Excel-Version liegen. Stelle sicher, dass Du den Code korrekt in die Module eingepflegt hast.
-
Die alte Datei wird überschrieben: Um dies zu vermeiden, verwende die .SaveCopyAs Methode anstelle von .SaveAs. So bleibt die alte Datei erhalten:
Sub SpeichernMitDatumUndUhrzeit()
With ThisWorkbook
.SaveCopyAs "Abrechnung_" & Format(Now, "yyyy-mm-dd, hh.mm") & ".xls"
End With
End Sub
Alternative Methoden
Eine weitere Möglichkeit, das Datum im Dateinamen zu speichern, ist die Verwendung von Excel-Formeln. Du kannst eine andere Zelle nutzen, um das aktuelle Datum anzuzeigen, und diese dann manuell in den Dateinamen einfügen. Eine Formel wie =TEXT(HEUTE(),"yyyy-mm-dd") könnte hier hilfreich sein.
Praktische Beispiele
Hier ist ein Beispiel, wie die Datei gespeichert werden könnte:
Sub SpeichernMitDatumUndUhrzeit()
Dim dateiname As String
dateiname = "Abrechnung_" & Format(Now, "yyyy-mm-dd, hh.mm") & ".xls"
ThisWorkbook.SaveCopyAs dateiname
End Sub
In diesem Beispiel wird ein Dateiname mit dem aktuellen Datum und der Uhrzeit generiert, was dir hilft, eine Übersicht über verschiedene Versionen der Datei zu behalten.
Tipps für Profis
-
Datum im Dateinamen formatieren: Stelle sicher, dass das Datum im richtigen Format angezeigt wird. Verwende Format(Now, "yyyy-mm-dd"), um das Datum in der gewünschten Form zu speichern.
-
Makros automatisieren: Nutze Tastenkombinationen, um Deine VBA-Skripte schneller auszuführen. Du kannst das Makro auch einer Schaltfläche im Excel-Dokument zuweisen.
FAQ: Häufige Fragen
1. Wie kann ich das Datum im Dateinamen automatisch aktualisieren?
Du kannst die Workbook_BeforeSave Methode nutzen, um den Dateinamen jedes Mal zu aktualisieren, wenn die Datei gespeichert wird.
2. Funktioniert dieser Code in Excel 2003?
Ja, der Code sollte auch in älteren Versionen von Excel, wie 2003, funktionieren. Achte jedoch darauf, dass die Datei im richtigen Format gespeichert wird (z.B. .xls für Excel 2003).
3. Ist es möglich, den Dateinamen anpassen?
Ja, Du kannst den Dateinamen nach Belieben anpassen, indem Du die Zeichenfolgen im VBA-Code änderst.