Drucken in PDF in Excel VBA: Mit Beispielen und Illustrationen

  • Teile Das
Hugh West

In diesem Artikel zeige ich Ihnen, wie Sie ein beliebiges Dokument mit Hilfe der folgenden Funktionen als PDF drucken können VBA In Excel verwenden wir die Option ExportAsFixedForma t-Methode von VBA Ich werde alle Parameter dieser Methode mit entsprechenden Beispielen und Illustrationen erläutern.

Drucken in PDF in Excel VBA (Schnellansicht)

Download Arbeitsbuch Praxis

Laden Sie dieses Übungsheft herunter, um zu üben, während Sie diesen Artikel lesen.

VBA Drucken in PDF.xlsm

Einführung in die Anweisung ExportAsFixedFormat

⧭ Überblick:

Die ExportAsFixedForma t-Methode von VBA speichert ein beliebiges Dokument im PDF-Format mit einem gegebenen Namen mit VBA Dies ist eine sehr nützliche Methode für diejenigen, die mit vielen Excel-Arbeitsblättern arbeiten und diese zur späteren Verwendung speichern.

⧭ Syntax:

Die Syntax der VBA ExportAsFixedFormat Methode ist:

 Document.ExportAsFixedFormat Type, Filename, Quality, IncludeDocProperties, IgnorePrintAreas, From, To, OpenAfterPublish 

⧭ Parameter:

Parameter Erforderlich / Optional Erläuterung
Typ Erforderlich Gibt den Dateityp an, als den Sie speichern möchten: xlTypePDF für PDF-Dateien oder xlTypeXPS für XPS-Dateien.
Dateiname Optional Der Name der Datei, die Sie speichern möchten. Geben Sie hier den vollständigen Pfad der Datei ein, wenn Sie die Datei unter einem anderen Pfad als in der Arbeitsmappe speichern möchten.
Qualität Optional Gibt die Qualität der zu speichernden Datei an. xlQualityStandard für die Standardqualität oder xlQualityMinimum für die Mindestqualität.
IncludeDocProperties Optional Setzen Sie ihn auf True, um die Dokumenteigenschaften einzuschließen, oder setzen Sie ihn auf False, um die Dokumenteigenschaften nicht einzuschließen.
IgnorePrintAreas Optional Setzen Sie True, um die Druckbereiche zu ignorieren, oder False, um die Druckbereiche nicht zu ignorieren.
Von Optional Die Anfangsseitennummer, ab der Ihr Dokument gespeichert werden soll.
An Optional Setzen Sie ihn auf True, um die Dokumenteigenschaften einzuschließen, oder setzen Sie ihn auf False, um die Dokumenteigenschaften nicht einzuschließen.
OpenAfterPublish Optional Setzen Sie diese Option auf True, um das Dokument nach der Veröffentlichung zu öffnen, oder setzen Sie sie auf False.

Rückgabewert:

Es konvertiert die Arbeitsblätter einer Excel-Arbeitsmappe in ein PDF-Dokument und speichert es in dem angegebenen Ordner mit dem angegebenen Namen.

5 Beispiele zum Drucken in PDF in Excel VBA mit der Anweisung ExportAsFixedFormat

Sehen wir uns einige Beispiele an, wie man ein Dokument in Excel als PDF drucken kann VBA mit dem ExportAsFixedFormat Methode.

Beispiel 1: Drucken in PDF in Excel VBA ohne Angabe von Namen oder Pfad

Hier haben wir ein Arbeitsblatt mit den Bucheinträgen einer Buchhandlung namens Marin Bookstore.

Schreiben wir ein einfaches VBA Code, um das Arbeitsblatt in ein PDF-Dokument zu konvertieren, wobei kein Name oder Pfad angegeben wird.

⧭ VBA-Code:

 Sub Print_To_PDF() ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF End Sub 

⧭ Ausgabe:

Führen Sie diesen Code aus, und Sie finden eine PDF-Datei mit demselben Namen wie Ihre Arbeitsmappe (Standardname, wenn kein Name angegeben ist) im selben Ordner wie Ihre Arbeitsmappe (Standardordner, wenn kein Pfad angegeben ist).

Hier wird sie benannt als Buch1.pdf da der Name meiner Arbeitsmappe lautet Buch1 .

Lesen Sie mehr: Excel VBA: Druckbereich dynamisch festlegen (7 Möglichkeiten)

Beispiel 2: Drucken in PDF in Excel VBA mit Angabe von Name und Pfad

Jetzt konvertieren wir dieselbe Arbeitsmappe in eine andere PDF-Datei und geben den Namen und den Pfad an.

Ich werde die PDF-Datei unter dem Namen "Martin Buchhandlung.pdf" auf dem Weg C:\Benutzer\Öffentlichkeit\ExcelWIKI auf meinem Computer, so dass die VBA Code sein wird:

⧭ VBA-Code:

 Sub Print_To_PDF() ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _ Filename:="C:\Users\Public\ExcelWIKI\Martin Bookstore.pdf" End Sub 

⧭ Ausgabe:

Dieser Code speichert das PDF-Dokument unter dem Pfad C:\Benutzer\Öffentlichkeit\ExcelWIKI auf meinem Computer mit dem Namen Martin Buchhandlung.pdf .

Lesen Sie mehr: Ausgewählten Bereich in Excel drucken (2 Beispiele)

Ähnliche Lektüre:

  • Wie man Titel in Excel druckt (5 einfache Möglichkeiten)
  • Arbeitsblatt mit Kommentaren in Excel drucken (5 einfache Möglichkeiten)
  • Ausgewählte Zellen in Excel drucken (2 einfache Möglichkeiten)
  • Zentrieren des Druckbereichs in Excel (4 Möglichkeiten)
  • Druckvorschau mit Excel VBA anzeigen (3 Makros)

Beispiel 3: Drucken in PDF in Excel VBA mit Öffnen der Datei nach der Veröffentlichung

Nun werden wir das Dokument so in PDF drucken, dass die Datei nach der Veröffentlichung geöffnet wird. Dazu müssen wir die OpenAfterPublish Parameter zu Wahr .

Also die VBA Code sein wird,

⧭ VBA-Code:

 Sub Print_To_PDF() ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _ Filename:="C:\Users\Public\ExcelWIKI\Martin Bookstore.pdf", _ OpenAfterPublish:=True End Sub 

⧭ Ausgabe:

Dieser Code speichert das PDF-Dokument unter dem Pfad C:\Benutzer\Öffentlichkeit\ExcelWIKI auf meinem Computer mit dem Namen Martin Buchhandlung.pdf und öffnen Sie die Datei, sobald sie veröffentlicht ist.

Verwandte Inhalte: Druckvorschau in Excel einstellen (6 Optionen)

Beispiel 4: Drucken mehrerer Arbeitsblätter in mehrere PDF-Dateien in Excel VBA

Bisher haben wir ein einzelnes Arbeitsblatt gedruckt, jetzt werden wir mehrere Arbeitsblätter in mehrere PDF-Dateien drucken.

Hier haben wir eine Arbeitsmappe mit 5 Arbeitsblätter, die jeweils den Bucheintrag einer bestimmten Buchhandlung enthalten.

Dieses Mal werden wir alle Arbeitsblätter in PDF-Dateien umwandeln.

Die VBA Code sein wird:

⧭ VBA-Code:

 Sub Print_Multiple_Sheets_To_PDF() Sheet_Names = InputBox("Enter the Names of the Worksheets to Print to PDF: ") Sheet_Names = Split(Sheet_Names, ", ") For i = LBound(Sheet_Names) To UBound(Sheet_Names) Worksheets(Sheet_Names(i)).ExportAsFixedFormat Type:=xlTypePDF, _ Filename:="C:\Users\Public\ExcelWIKI\" + Sheet_Names(i) + ".pdf" Next i EndUnter 

⧭ Ausgabe:

Führen Sie den Code aus. In einem Eingabefeld werden Sie aufgefordert, die Namen der Arbeitsblätter einzugeben, die in PDF konvertiert werden sollen. Hier habe ich eingegeben Joseph Buchhandlung, Morgan Buchhandlung, Angela Buchhandlung .

Klicken Sie auf OK und speichert sie als PDF-Dateien in dem Ordner C:\Benutzer\Öffentlichkeit\ExcelWIKI .

Lesen Sie mehr: Wie man mehrere Blätter in Excel druckt (7 verschiedene Methoden)

Beispiel 5: Entwickeln einer benutzerdefinierten Funktion zum Drucken in eine PDF-Datei in Excel VBA

Zum Schluss zeige ich Ihnen, wie Sie eine benutzerdefinierte Funktion entwickeln können, um ein beliebiges Arbeitsblatt mit Excel in PDF zu drucken VBA .

Entwickeln wir eine Funktion namens PrintToPDF die das aktive Arbeitsblatt in eine PDF-Datei druckt.

Die VBA Code sein wird:

⧭ VBA-Code:

 Function PrintToPDF() ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _ Filename:="C:\Users\Public\ExcelWIKI\Martin Bookstore.pdf" End Function 

⧭ Ausgabe:

Geben Sie diese Funktion in eine beliebige Zelle Ihres Arbeitsblatts ein.

=PrintToPDF()

Dann klicken Sie auf EINGEBEN Es konvertiert das aktive Blatt ( Martin Buchhandlung hier) in eine PDF-Datei im angegebenen Ordner.

Lesen Sie mehr: Excel VBA: UserForm so drucken, dass es auf eine Seite passt (2 Methoden)

Dinge zum Merken

Bei der Entwicklung der Codes haben wir die meiste Zeit die ActiveSheet Gegenstand von VBA Es gibt das Arbeitsblatt zurück, das zu diesem Zeitpunkt in der aktiven Arbeitsmappe aktiv ist.

Manchmal haben wir auch die Eigenschaft ActiveSheet.Name Sie gibt den Namen des aktiven Arbeitsblatts zurück.

Schlussfolgerung

So drucken Sie ein beliebiges Arbeitsblatt als PDF mit VBA Wenn Sie Fragen haben, fragen Sie uns. Und vergessen Sie nicht, unsere Website zu besuchen ExcelWIKI für weitere Beiträge und Aktualisierungen.

Hugh West ist ein äußerst erfahrener Excel-Trainer und -Analyst mit über 10 Jahren Erfahrung in der Branche. Er verfügt über einen Bachelor-Abschluss in Rechnungswesen und Finanzen sowie einen Master-Abschluss in Betriebswirtschaft. Hugh hat eine Leidenschaft für das Unterrichten und hat einen einzigartigen Lehransatz entwickelt, der leicht zu befolgen und zu verstehen ist. Seine Expertenkenntnisse in Excel haben Tausenden von Studenten und Berufstätigen auf der ganzen Welt geholfen, ihre Fähigkeiten zu verbessern und in ihrer Karriere herausragende Leistungen zu erbringen. Über seinen Blog teilt Hugh sein Wissen mit der Welt und bietet kostenlose Excel-Tutorials und Online-Schulungen an, um Einzelpersonen und Unternehmen dabei zu helfen, ihr volles Potenzial auszuschöpfen.