Sådan udskrives til PDF i Excel VBA : Med eksempler og illustrationer

  • Del Dette
Hugh West

I denne artikel vil jeg vise dig, hvordan du kan udskrive ethvert dokument til PDF ved hjælp af VBA i Excel. Vi vil bruge ExportAsFixedForma t metode til VBA Jeg vil diskutere alle parametrene for denne metode med gode eksempler og illustrationer.

Udskrivning til PDF i Excel VBA (hurtig visning)

Download arbejdsbog til øvelser

Download denne arbejdsbog til at øve dig, mens du læser denne artikel.

VBA Udskriv til PDF.xlsm

Introduktion til ExportAsFixedFormat-erklæringen

⧭ Oversigt:

ExportAsFixedForma t metode til VBA gemmer et givet dokument i PDF-format med et givet navn med VBA Dette er en ret nyttig metode for dem, der arbejder med mange Excel-regneark og gemmer dem til senere brug.

⧭ Syntaks:

Syntaksen for VBA ExportAsFixedFormat metode er:

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

⧭ Parametre:

Parameter Krævet / valgfri Forklaring
Type Påkrævet Angiver den filtype, du vil gemme som. Brug xlTypePDF for PDF-filer eller xlTypeXPS for XPS-filer.
Filenavn Valgfrit Navnet på den fil, du vil gemme. Indtast den fulde sti til filen her, hvis du vil gemme filen på en anden sti end i arbejdsbogen.
Kvalitet Valgfrit Angiver kvaliteten af den fil, der skal gemmes. Brug xlQualityStandard for standardkvalitet eller xlQualityMinimum for minimumskvalitet.
IncludeDocProperties Valgfrit Indstil den som True for at medtage dokumentegenskaberne, eller indstil den som False for ikke at medtage dokumentegenskaberne.
IgnorePrintAreas Valgfrit Indstil True for at ignorere udskriftsområderne, eller False for ikke at ignorere udskriftsområderne.
Fra Valgfrit Startsidenummeret, hvorfra dokumentet begynder at blive gemt.
Til Valgfrit Indstil den som True for at medtage dokumentegenskaberne, eller indstil den som False for ikke at medtage dokumentegenskaberne.
OpenAfterPublish Valgfrit Indstil den som True for at åbne dokumentet efter udgivelse, eller indstil den som False.

Returneringsværdi:

Den konverterer regnearkene i en Excel-arbejdsbog som et PDF-dokument og gemmer det i den angivne mappe med det angivne navn.

5 eksempler på at udskrive til PDF i Excel VBA med ExportAsFixedFormat-erklæringen

Lad os undersøge et par eksempler på, hvordan du udskriver et dokument til PDF i Excel VBA med den ExportAsFixedFormat metode.

Eksempel 1: Udskriv til PDF i Excel VBA uden angivelse af navn eller sti

Her har vi et regneark med bogregistreringer for en boghandel ved navn Marin Bookstore.

Lad os skrive en simpel VBA kode til at konvertere regnearket til et PDF-dokument uden at angive navn eller sti.

⧭ VBA-kode:

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

⧭ Udgang:

Kør denne kode, og du vil finde en PDF-fil med samme navn som din projektmappe (standardnavn, når der ikke er angivet noget navn) i samme mappe som din projektmappe (standardmappe, når der ikke er angivet nogen sti).

Her hedder det som Bog1.pdf da navnet på min projektmappe var Bog1 .

Læs mere: Excel VBA: Sådan indstiller du udskriftsområdet dynamisk (7 måder)

Eksempel 2: Udskriv til PDF i Excel VBA med navn og sti angivet

Nu konverterer vi den samme arbejdsbog til en anden PDF-fil ved at angive navnet og stien.

Jeg gemmer PDF-filen med navnet "Martin Bookstore.pdf" i stien C:\Users\Public\ExcelWIKI på min computer. Så den VBA kode vil være:

⧭ VBA-kode:

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

⧭ Udgang:

Denne kode gemmer PDF-dokumentet i stien C:\Users\Public\ExcelWIKI på min computer med navnet Martin Bookstore.pdf .

Læs mere: Sådan udskrives markeret område i Excel (2 eksempler)

Lignende læsninger:

  • Sådan udskriver du titler i Excel (5 nemme måder)
  • Udskriv regneark med kommentarer i Excel (5 nemme måder)
  • Sådan udskriver du valgte celler i Excel (2 nemme måder)
  • Centrer udskriftsområdet i Excel (4 måder)
  • Sådan vises udskriftsforhåndsvisning med Excel VBA (3 makroer)

Eksempel 3: Udskrivning til PDF i Excel VBA med åbning af filen efter offentliggørelse

Nu skal vi udskrive dokumentet til PDF på en sådan måde, at filen åbnes, når den er offentliggjort. Vi skal indstille OpenAfterPublish parameter til True .

Så den VBA kode vil være,

⧭ VBA-kode:

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

⧭ Udgang:

Denne kode gemmer PDF-dokumentet i stien C:\Users\Public\ExcelWIKI på min computer med navnet Martin Bookstore.pdf og åbne filen, så snart den er offentliggjort.

Relateret indhold: Sådan indstiller du udskriftsforhåndsvisning i Excel (6 muligheder)

Eksempel 4: Udskriv flere regneark til flere PDF-filer i Excel VBA

Indtil nu har vi udskrevet et enkelt regneark. Denne gang vil vi udskrive flere regneark til flere PDF-filer.

Her har vi en arbejdsbog med 5 regneark, der hver indeholder bogregistreringer for en bestemt boghandel.

Denne gang konverterer vi alle regnearkene til PDF-filer.

VBA kode vil være:

⧭ VBA-kode:

 Sub Print_Multiple_Sheets_To_PDF() Sheet_Names = InputBox("Indtast navnene på de regneark, der skal udskrives til 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 EndUnder 

⧭ Udgang:

Kør koden. Et indtastningsfelt vil bede dig om at indtaste navnene på de regneark, der skal konverteres til PDF. Her har jeg indtastet Joseph Bookstore, Morgan Bookstore, Angela Bookstore .

Klik på OK . og den gemmer dem som PDF-filer i mappen C:\Users\Public\ExcelWIKI .

Læs mere: Sådan udskriver du flere ark i Excel (7 forskellige metoder)

Eksempel 5: Udvikling af en brugerdefineret funktion til at udskrive til PDF-fil i Excel VBA

Endelig viser jeg dig, hvordan du kan udvikle en brugerdefineret funktion til at udskrive et regneark til PDF-filer med Excel VBA .

Lad os udvikle en funktion kaldet PrintToPDF der udskriver det aktive regneark til en PDF-fil.

VBA kode vil være:

⧭ VBA-kode:

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

⧭ Udgang:

Indtast denne funktion i en vilkårlig celle i dit regneark.

=PrintToPDF()

Klik derefter på INDTAST Det konverterer det aktive ark ( Martin Boghandel her) til en PDF-fil i den angivne mappe.

Læs mere: Excel VBA: Udskriv brugerformularen, så den passer på en side (2 metoder)

Ting at huske

Under udviklingen af koderne har vi for det meste brugt ActiveSheet objekt af VBA Den returnerer det regneark, der er aktivt på det pågældende tidspunkt i den aktive projektmappe.

Nogle gange har vi også brugt ejendommen ActiveSheet.Name . det returnerer navnet på det aktive regneark.

Konklusion

Så dette er måden at udskrive et regneark til PDF med VBA i Excel. Har du spørgsmål? Du er velkommen til at spørge os. Og glem ikke at besøge vores hjemmeside ExcelWIKI for flere indlæg og opdateringer.

Hugh West er en meget erfaren Excel-træner og analytiker med over 10 års erfaring i branchen. Han har en bachelorgrad i regnskab og finans og en kandidatgrad i Business Administration. Hugh har en passion for undervisning og har udviklet en unik undervisningstilgang, der er nem at følge og forstå. Hans ekspertviden om Excel har hjulpet tusindvis af studerende og fagfolk verden over med at forbedre deres færdigheder og udmærke sig i deres karriere. Gennem sin blog deler Hugh sin viden med verden og tilbyder gratis Excel-tutorials og onlinetræning for at hjælpe enkeltpersoner og virksomheder med at nå deres fulde potentiale.