PDF-Dateien aus Excel speichern
Schritt-für-Schritt-Anleitung
Um eine Excel-Arbeitsmappe als PDF zu speichern, kannst Du den folgenden VBA-Code verwenden. Dieser speichert die aktive Arbeitsmappe im PDF-Format und fügt das aktuelle Datum zum Dateinamen hinzu.
Sub SpeichernAlsPDF()
Dim sPfad As String
sPfad = "D:\DeinPfad\" ' Passe den Speicherort an
ActiveWorkbook.ExportAsFixedFormat Type:=xlTypePDF, _
Filename:=sPfad & "DeinDateiname_" & Format(Date, "DDMMYYYY") & ".pdf", _
Quality:=xlQualityStandard, _
IncludeDocProperties:=True, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=True
End Sub
Dieser Code nutzt die Methode ExportAsFixedFormat und speichert die Datei mit den angegebenen Parametern. Achte darauf, den Pfad und den Dateinamen entsprechend anzupassen.
Häufige Fehler und Lösungen
-
Fehlermeldung bei Export
-
Export nicht in einer Zeile
- Stelle sicher, dass alle Parameter in der
ExportAsFixedFormat-Zeile korrekt und vollständig in einer Zeile geschrieben sind. Beispiel:
ActiveSheet.ExportAsFixedFormat xlTypePDF, exportpdffile, _
Quality:=xlQualityStandard, IncludeDocProperties:=False, _
IgnorePrintAreas:=True, OpenAfterPublish:=False
Alternative Methoden
Falls Du eine spezifische Auswahl an Blättern speichern möchtest, kannst Du dies ebenfalls tun. Hier ein Beispiel:
Sheets(Array("Front", "Mitte", "Rückseite")).Select
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
Filename:="C:\Ordner\Unterordner\Dashboard_" & Format(Date, "dd.mm.yyyy") & ".pdf", _
Quality:=xlQualityStandard, _
IncludeDocProperties:=True, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=True
Hierbei wird die Auswahl von mehreren Blättern zusammen als PDF-Datei gespeichert.
Praktische Beispiele
In diesem Beispiel wird die aktive Arbeitsmappe als PDF in einem temporären Verzeichnis gespeichert:
Sub ExportPDFTemp()
Dim verzeichnis2 As String
verzeichnis2 = Environ("TEMP") & "\"
Dim ws2 As String
ws2 = ActiveSheet.Name
Dim exportpdffile As String
exportpdffile = verzeichnis2 & ws2 & Format(Date, "DDMMYYYY") & ".pdf"
ActiveSheet.ExportAsFixedFormat xlTypePDF, _
exportpdffile, _
Quality:=xlQualityStandard, _
IncludeDocProperties:=False, _
IgnorePrintAreas:=True, _
OpenAfterPublish:=False
End Sub
Mit dieser Methode kannst Du schnell und einfach eine PDF des aktiven Blattes erstellen und speichern.
Tipps für Profis
-
Verwende Variablen für den Pfad: Speichere den Pfad in einer Variablen, um ihn leicht anpassen zu können.
-
Fehlerbehandlung: Implementiere eine Fehlerbehandlung, um Probleme beim Speichern zu identifizieren:
On Error Resume Next
' Dein Code zum Speichern
If Err.Number <> 0 Then
MsgBox "Fehler beim Speichern: " & Err.Description
End If
On Error GoTo 0
-
Automatisierung: Du kannst den Export in eine Schaltfläche einfügen, um den Prozess noch schneller zu machen.
FAQ: Häufige Fragen
1. Wie kann ich sicherstellen, dass die Druckbereiche ignoriert werden?
Um die Druckbereiche zu ignorieren, setze den Parameter IgnorePrintAreas in Deinem VBA-Code auf True.
2. Was passiert, wenn ich OpenAfterPublish auf True setze?
Wenn Du OpenAfterPublish:=True verwendest, wird die PDF-Datei automatisch geöffnet, sobald der Export abgeschlossen ist.