PDF mit Datum speichern in Excel
Schritt-für-Schritt-Anleitung
Um ein PDF-Dokument aus Excel zu erstellen und dabei das aktuelle Datum im Dateinamen zu speichern, kannst Du folgenden VBA-Code verwenden. Dieser Code speichert zwei Blätter als eine PDF-Datei und fügt das Datum im Format "YYYY_MM_DD" in den Dateinamen ein:
Sub pdf()
' Einen dynamischen String-Array deklarieren:
Dim arrBlätter() As String
' Diesen Array zB. auf 2 Elemente festlegen:
ReDim arrBlätter(1 To 2)
arrBlätter(1) = "Test1"
arrBlätter(2) = "Test2"
' Blätter auswählen
Sheets(arrBlätter).Select
Sheets(arrBlätter(1)).Activate
' PDF speichern mit Datum im Dateinamen
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
FileName:=ThisWorkbook.Path & "\" & Format(Date, "YYYY_MM_DD_") & "Testdatei.pdf", _
Quality:=xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:=False, OpenAfterPublish:=False
' Deselektion der Blätter
Sheets("Test1").Select
End Sub
Mit diesem Code wird eine PDF-Datei erstellt, deren Name das aktuelle Datum enthält. Achte darauf, dass der Pfad, in dem die Datei gespeichert wird, korrekt ist.
Häufige Fehler und Lösungen
-
Fehlermeldung beim Speichern der PDF
- Ursache: Falsche Verwendung der
Format()-Funktion.
- Lösung: Stelle sicher, dass Du die Funktion so verwendest:
Format(Date, "YYYY_MM_DD_").
-
Dateiname wird nicht korrekt angezeigt
- Ursache: Das Datum wird möglicherweise nicht richtig formatiert.
- Lösung: Überprüfe den Code auf die richtige Syntax und stelle sicher, dass das Datum im gewünschten Format gespeichert wird.
Alternative Methoden
Es gibt verschiedene Möglichkeiten, das Datum in den Dateinamen einzufügen. Eine Alternative wäre, das Datum zuerst in eine Zelle zu schreiben und dann diese Zelle im Dateinamen zu referenzieren. Zum Beispiel:
Dim DateStr As String
DateStr = Format(Range("A1").Value, "YYYY_MM_DD")
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
FileName:=ThisWorkbook.Path & "\" & DateStr & "_Testdatei.pdf", _
Quality:=xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:=False, OpenAfterPublish:=False
Praktische Beispiele
Hier ist ein Beispiel für eine Excel-Datei, die Du erstellen kannst:
- Blatt "Test1": Enthält Daten, die Du speichern möchtest.
- Blatt "Test2": Zusätzliche Daten.
Nachdem Du den VBA-Code ausgeführt hast, wird eine PDF-Datei mit dem aktuellen Datum im Namen erstellt, z.B. 2023_10_07_Testdatei.pdf.
Tipps für Profis
- Automatisierung: Du kannst den Code in ein Makro einfügen, um das PDF-Speichern zu automatisieren.
- Anpassungen: Passe den Dateinamen an, indem Du weitere Informationen hinzufügst, z.B.
Format(Date, "YYYY_MM_DD_HH_MM") für eine zeitgenaue Speicherung.
- Fehlerüberprüfung: Füge Fehlerbehandlungsroutinen hinzu, damit Du weißt, wenn etwas schiefgeht.
FAQ: Häufige Fragen
1. Wie kann ich das Datum im Format DD.MM.YYYY speichern?
Verwende die Formatierung Format(Date, "DD.MM.YYYY") im Dateinamen.
2. Funktioniert das auch in Excel 2016?
Ja, der VBA-Code funktioniert in Excel 2016 und neueren Versionen ohne Probleme.
3. Kann ich mehrere PDFs mit unterschiedlichen Datumsformaten speichern?
Ja, Du kannst verschiedene Variablen für die verschiedenen Datumsformate anlegen und diese im Dateinamen verwenden.