Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: PDF mit Datum speichern

PDF mit Datum speichern
16.07.2022 08:58:39
Ralf
Guten Morgen Zusammen,
mit dem unten stehenden Code werden zwei Blätter als eine PDF Datei gespeichert.
Die Datei wird ja als Testdatei.pdf abgespeichert. Nun habe ich versucht das vor dem Namen der Datei das Heutige Datum in diesem Format steht dd.mm.yyyy
Bekomem es leider nicht hin. Bekomme immer eine Fehlermeldung.
Wie und wo muss das Format in dem Code eingebaut werden ?
Danke Ralf

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"
'Falls eine Vergrößerung zB. auf 3 Elemente notwendig ist,
'ohne dabei die bisherigen Elementinhalte zu verlieren:
ReDim Preserve arrBlätter(1 To 2)
Sheets(arrBlätter).Select
Sheets(arrBlätter(1)).Activate
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
FileName:=ThisWorkbook.Path & "\Testdatei.pdf",&(Datum, "DD_MM_YYYY") _
Quality:=xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:=False, OpenAfterPublish:=False
'Deselektion der 3 Arbeitsblätter:
Sheets("Test1").Select
'End Sub
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: PDF mit Datum speichern
16.07.2022 09:21:37
Luschi
Hallo Ralf,
'Datum' vor dem Dateinamen sieht bei mir so aus:
FileName:=ThisWorkbook.Path & "\" & Format(Date, "YYYY_MM_DD_") & "Testdatei.pdf", _
Damit die pdf-Dateien datumsmäßig aufsteigend im Explorer sortiert sind, beachte die umgedrehten Parameter in der Format()-Funktion.
Gruß von Luschi
aus klein-Paris
Anzeige
AW: PDF mit Datum speichern Danke
16.07.2022 09:28:20
Ralf
Hallo Luschi,
besten Dank für Deine Hilfe.
Funktioniert wie gewünscht.
Gruß Ralf
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

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

  1. 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_").
  2. 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:

  1. Blatt "Test1": Enthält Daten, die Du speichern möchtest.
  2. 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.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige