PDF-Druck mit ExportAsFixedFormat in Excel
Schritt-für-Schritt-Anleitung
Um ein Excel-Dokument als PDF zu exportieren, kannst du die Methode ExportAsFixedFormat
verwenden. Hier ist eine einfache Schritt-für-Schritt-Anleitung:
-
Öffne Excel und drücke ALT + F11
, um den VBA-Editor zu öffnen.
-
Füge ein neues Modul hinzu, indem du im Menü auf Einfügen > Modul
klickst.
-
Kopiere den folgenden Code in das Modul:
Sub print_pdf()
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=True
End Sub
-
Passe den Code an, um einen Dateinamen einzufügen:
Sub print_pdf_with_name()
Dim Dateiname As String
Dateiname = InputBox("Bitte Dateinamen ohne Endung angeben!")
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
ThisWorkbook.Path & "\" & Dateiname & ".pdf", Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=True
End Sub
-
Führe das Makro aus, um dein Arbeitsblatt als PDF zu speichern.
Häufige Fehler und Lösungen
Alternative Methoden
Es gibt mehrere Methoden, um ein Excel-Dokument als PDF zu speichern:
-
Speichern unter Dialog: Du kannst den Dialog "Speichern unter" mit folgendem Befehl aufrufen:
Application.Dialogs(xlDialogSaveAs).Show
-
Excel-Befehl: Eine weitere Möglichkeit ist die Verwendung des folgenden Befehls, um den "Als PDF oder XPS veröffentlichen" Dialog zu öffnen:
Application.CommandBars.ExecuteMso "FileSaveAsPdfOrXps"
Diese Methoden ermöglichen es dir, die Datei manuell zu speichern und zu benennen.
Praktische Beispiele
Hier sind einige praktische Beispiele für die Verwendung von ExportAsFixedFormat
:
-
Einfaches PDF mit festem Namen:
Sub SaveAsPDF()
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:="C:\Users\DeinBenutzername\Documents\MeinDokument.pdf", Quality:=xlQualityStandard
End Sub
-
PDF mit Benutzerdefiniertem Dateinamen:
Sub SavePDFWithDialog()
Dim FilePath As String
FilePath = Application.GetSaveAsFilename(FileFilter:="PDF Dateien (*.pdf), *.pdf")
If FilePath <> "False" Then
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=FilePath, Quality:=xlQualityStandard
End If
End Sub
Tipps für Profis
- Verwende die Option
IgnorePrintAreas:=True
, um alle Inhalte des Arbeitsblatts, unabhängig von den Druckbereichen, zu exportieren.
- Setze
OpenAfterPublish:=False
, wenn du das PDF nicht automatisch nach dem Speichern öffnen möchtest.
- Vergiss nicht, die Qualität des PDFs anzupassen, indem du
Quality:=xlQualityStandard
oder Quality:=xlQualityMinimum
verwendest, je nach deinen Anforderungen.
FAQ: Häufige Fragen
1. Kann ich mehrere Arbeitsblätter in einer PDF speichern?
Ja, du kannst mehrere Arbeitsblätter in einer PDF speichern, indem du die Arbeitsblätter vor dem Exportieren gruppierst.
2. Was muss ich tun, wenn der PDF-Drucker nicht verfügbar ist?
Stelle sicher, dass du eine unterstützte Version von Excel verwendest (mindestens Excel 2007). Überprüfe auch, ob der PDF-Drucker in den Druckereinstellungen aktiviert ist.