Afdrukken naar PDF in Excel VBA: met voorbeelden en illustraties

  • Deel Dit
Hugh West

In dit artikel laat ik u zien hoe u elk document naar PDF kunt afdrukken met behulp van VBA in Excel. We gebruiken de ExportAsFixedForma t methode van VBA Ik zal alle parameters van deze methode bespreken met goede voorbeelden en illustraties.

Afdrukken naar PDF in Excel VBA (Snelle weergave)

Download Praktijk Werkboek

Download dit oefenwerkboek om te oefenen terwijl u dit artikel leest.

VBA afdrukken naar PDF.xlsm

Inleiding tot de ExportAsFixedFormat verklaring

⧭ Overzicht:

De ExportAsFixedForma t methode van VBA slaat een gegeven document op in het PDF-formaat met een gegeven naam met VBA Dit is een vrij nuttige methode voor wie met veel Excel-werkbladen werkt en deze opslaat voor toekomstig gebruik.

⧭ Syntax:

De syntaxis van de VBA ExportAsFixedFormat methode is:

 Document.ExportAsFixedFormat Type, Bestandsnaam, Kwaliteit, IncludeDocProperties, IgnorePrintAreas, Van, Naar, OpenAfterPublish 

⧭ Parameters:

Parameter Verplicht / Facultatief Uitleg
Type Vereist Gebruik xlTypePDF voor PDF-bestanden, of xlTypeXPS voor XPS-bestanden.
Bestandsnaam Optioneel De naam van het bestand dat u wilt opslaan. Voer hier het volledige pad van het bestand in als u het bestand in een ander pad dan de werkmap wilt opslaan.
Kwaliteit Optioneel Gebruik xlQualityStandard voor de standaardkwaliteit, of xlQualityMinimum voor de minimumkwaliteit.
IncludeDocProperties Optioneel Stel het in als True om de documenteigenschappen op te nemen, of stel het in als False om de documenteigenschappen niet op te nemen.
IgnorePrintAreas Optioneel Stel Waar in om de afdrukgebieden te negeren, of Onwaar om de afdrukgebieden niet te negeren.
Van Optioneel Het beginpaginanummer vanaf waar uw document wordt opgeslagen.
Naar Optioneel Stel het in als True om de documenteigenschappen op te nemen, of stel het in als False om de documenteigenschappen niet op te nemen.
OpenAfterPublish Optioneel Stel het in als True om het document te openen na het publiceren of stel het in als False.

Return Value:

Het converteert de werkbladen van een Excel-werkmap als een PDF-document en slaat het op in de opgegeven map met de opgegeven naam.

5 Voorbeelden van afdrukken naar PDF in Excel VBA met het ExportAsFixedFormat statement

Laten we een paar voorbeelden bekijken van hoe een document naar PDF kan worden afgedrukt in Excel VBA met de ExportAsFixedFormat methode.

Voorbeeld 1: Afdrukken naar PDF in Excel VBA zonder opgegeven naam of pad

Hier hebben we een werkblad met de boekrecords van een boekhandel genaamd Marin Bookstore.

Laten we een eenvoudige VBA code om het werkblad te converteren naar een PDF-document, waarbij geen naam of pad wordt opgegeven.

⧭ VBA-code:

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

⧭ Uitgang:

Voer deze code uit, en u vindt een PDF-bestand met dezelfde naam als uw werkmap (Standaardnaam wanneer geen naam is opgegeven) in dezelfde map als uw werkmap (Standaardmap wanneer geen pad is opgegeven).

Hier wordt het genoemd als Book1.pdf als de naam van mijn werkmap was Boek 1 .

Lees meer: Excel VBA: Hoe afdrukgebied dynamisch instellen (7 manieren)

Voorbeeld 2: Afdrukken naar PDF in Excel VBA met opgegeven naam en pad

Nu converteren we dezelfde werkmap naar een ander PDF-bestand, waarbij we de naam en het pad opgeven.

Ik zal de PDF opslaan met de naam "Martin Bookstore.pdf" in pad C:\PubliekeExcelWIKI op mijn computer. Dus de VBA code zal zijn:

⧭ VBA-code:

 Sub Print_To_PDF() ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _ Bestandsnaam:="C:\Users\PublicExcelWIKI\Martin Bookstore.pdf" Einde Sub 

⧭ Uitgang:

Deze code zal het PDF-document opslaan in het pad C:\PubliekeExcelWIKI op mijn computer met de naam Martin Bookstore.pdf .

Lees meer: Geselecteerd gebied afdrukken in Excel (2 voorbeelden)

Vergelijkbare lezingen:

  • Titels afdrukken in Excel (5 eenvoudige manieren)
  • Werkblad met opmerkingen afdrukken in Excel (5 eenvoudige manieren)
  • Geselecteerde cellen afdrukken in Excel (2 eenvoudige manieren)
  • Het afdrukgebied in Excel centreren (4 manieren)
  • Afdrukvoorbeeld weergeven met Excel VBA (3 macro's)

Voorbeeld 3: Afdrukken naar PDF in Excel VBA met openen van het bestand na publiceren

Nu gaan we het document afdrukken naar PDF op zo'n manier dat het bestand wordt geopend na publicatie. We moeten de OpenAfterPublish parameter naar Echt .

Dus de VBA code zal zijn,

⧭ VBA-code:

 Sub Print_To_PDF() ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _ Bestandsnaam:="C:\Users\PublicExcelWIKI\Martin Bookstore.pdf", _ OpenAfterPublish:=True Einde Sub 

⧭ Uitgang:

Deze code zal het PDF-document opslaan in het pad C:\PubliekeExcelWIKI op mijn computer met de naam Martin Bookstore.pdf en open het bestand zodra het gepubliceerd is.

Gerelateerde inhoud: Afdrukvoorbeeld in Excel instellen (6 opties)

Voorbeeld 4: Meerdere werkbladen afdrukken naar meerdere PDF-bestanden in Excel VBA

Tot nu toe hebben we een enkel werkblad afgedrukt. Deze keer gaan we meerdere werkbladen afdrukken naar meerdere PDF-bestanden.

Hier hebben we een werkboek met 5 werkbladen, die elk het boekrecord van een bepaalde boekhandel bevatten.

Deze keer converteren we alle werkbladen naar PDF-bestanden.

De VBA code zal zijn:

⧭ VBA-code:

 Sub Print_Multiple_Sheets_To_PDF() Sheet_Names = InputBox("Voer de namen in van de werkbladen die naar PDF moeten worden afgedrukt: ") Sheet_Names = Split(Sheet_Names, ", ") For i = LBound(Sheet_Names) To UBound(Sheet_Names) Worksheets(Sheet_Names(i)).ExportAsFixedFormat Type:=xlTypePDF, _ Filename:="C:Users\ublicExcelWIKI" + Sheet_Names(i) + ".pdf" Next i EndSub 

⧭ Uitgang:

Voer de code uit. Een invoerveld zal u vragen om de namen van de werkbladen in te voeren die naar PDF moeten worden geconverteerd. Hier heb ik ingevoerd Joseph Boekhandel, Morgan Boekhandel, Angela Boekhandel .

Klik op OK En het slaat ze op als PDF-bestanden in de map C:\PubliekeExcelWIKI .

Lees meer: Hoe meerdere bladen afdrukken in Excel (7 verschillende methoden)

Voorbeeld 5: Een door de gebruiker gedefinieerde functie ontwikkelen om af te drukken naar een PDF-bestand in Excel VBA

Tenslotte laat ik u zien hoe u een door de gebruiker gedefinieerde functie kunt ontwikkelen om elk werkblad met Excel af te drukken naar PDF. VBA .

Laten we een functie ontwikkelen met de naam PrintToPDF die het actieve werkblad afdrukt in een PDF-bestand.

De VBA code zal zijn:

⧭ VBA-code:

 Functie PrintToPDF() ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _ Bestandsnaam:="C:\UsersPublicExcelWIKI\Martin Bookstore.pdf" Einde Functie 

⧭ Uitgang:

Voer deze functie in een willekeurige cel van uw werkblad in.

=PrintToPDF()

Klik dan op ENTER Het zal het actieve blad ( Martin Boekhandel hier) naar een PDF-bestand in de opgegeven map.

Lees meer: Excel VBA: Gebruikersformulier afdrukken zodat het op een pagina past (2 methoden)

Dingen om te onthouden

Bij het ontwikkelen van de codes hebben we meestal de ActiveSheet object van VBA Het geeft het werkblad dat op dat moment actief is in de actieve werkmap.

Ook hebben we soms het pand gebruikt ActiveSheet.Name Het geeft de naam van het actieve werkblad.

Conclusie

Dus dit is de manier om een werkblad af te drukken naar PDF met VBA in Excel. Heb je vragen? Stel ze ons gerust. En vergeet niet onze site te bezoeken ExcelWIKI voor meer berichten en updates.

Hugh West is een zeer ervaren Excel-trainer en -analist met meer dan 10 jaar ervaring in de branche. Hij heeft een bachelor in Accounting en Finance en een master in Business Administration. Hugh heeft een passie voor lesgeven en heeft een unieke lesaanpak ontwikkeld die gemakkelijk te volgen en te begrijpen is. Zijn deskundige kennis van Excel heeft duizenden studenten en professionals over de hele wereld geholpen hun vaardigheden te verbeteren en uit te blinken in hun carrière. Via zijn blog deelt Hugh zijn kennis met de wereld en biedt hij gratis Excel-tutorials en online trainingen aan om individuen en bedrijven te helpen hun volledige potentieel te bereiken.