Excel VBA Shrani kot (natisni) v PDF

Ta vadnica bo pokazala, kako shraniti / natisniti v PDF v Excelu VBA.

Natisni v PDF

Ta preprost postopek bo natisnil list ActiveSheet v PDF.

123456 Sub SimplePrintToPDF ()ActiveSheet.ExportAsFixedFormat Vrsta: = xlTypePDF, Ime datoteke: = "demo.pdf", Kakovost: = xlQualityStandard, _IncludeDocProperties: = False, IgnorePrintAreas: = False, OpenAfterPublish: = TrueEnd Sub

Ustvaril sem tudi funkcijo za obravnavo napak itd., Ki bo natisnila list ActiveSheet v PDF:

12345678910111213141516171819202122232425262728293031323334353637383940 Sub PrintPDF ()Pokličite Save_PDFEnd SubFunkcija Save_PDF () As Boolean 'Kopira liste v novo datoteko PDF za e-poštoZatemni ta list kot niz, to datoteko kot niz, ime poti kot nizDim SvAs As StringApplication.ScreenUpdating = Napačno'Get File Save NameTa list = Ime aktivnega listaThisFile = ActiveWorkbook.NamePathName = ActiveWorkbook.PathSvAs = Ime poti & "\" & Ta list & ".pdf"'Nastavite kakovost tiskanjaOn Napaka Nadaljuj NaprejActiveSheet.PageSetup.PrintQuality = 600Napaka JasnoPri napaki Pojdi na 0'Naročite uporabniku, kako poslatiNapaka pri vklopu Pojdi na RefLibErrorActiveSheet.ExportAsFixedFormat Vrsta: = xlTypePDF, Ime datoteke: = SvAs, Kakovost: = xlQualityStandard, IncludeDocProperties: = False, IgnorePrintAreas: = False, OpenAfterPublish: = TruePri napaki Pojdi na 0Shrani samo:MsgBox "Kopija tega lista je bila uspešno shranjena kot datoteka .pdf:" & Chr (13) & Chr (13) & SvAs & _"Preglejte dokument .pdf. Če dokument NE izgleda dobro, prilagodite parametre tiskanja in poskusite znova."Save_PDF = ResPojdi na EndMacroRefLibError:MsgBox "Ni mogoče shraniti kot PDF. Referenčne knjižnice ni mogoče najti."Save_PDF = NapačnoEndMacro:Končana funkcija

Funkcija vrne TRUE ali FALSE, če je bilo tiskanje v PDF uspešno ali ne.

Shrani in pošlji PDF funkcijo

Ta funkcija bo shranila list ActiveSheet kot PDF in (po želji) dokument PDF priložila e -poštnemu sporočilu (ob predpostavki, da imate nameščen Outlook):

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 Sub Test_Save_PDF ()Pokliči Send_PDF ("SendEmail")End SubFunkcija Send_PDF (izbirno dejanje As String = "SaveOnly") As Boolean 'Kopira liste v novo datoteko PDF za e-poštoZatemni ta list kot niz, to datoteko kot niz, ime poti kot nizDim SvAs As StringApplication.ScreenUpdating = Napačno'Get File Save NameTa list = Ime aktivnega listaThisFile = ActiveWorkbook.NamePathName = ActiveWorkbook.PathSvAs = Ime poti & "\" & Ta list & ".pdf"'Nastavite kakovost tiskanjaOn Napaka Nadaljuj NaprejActiveSheet.PageSetup.PrintQuality = 600Napaka JasnoPri napaki Pojdi na 0'Naročite uporabniku, kako poslatiNapaka pri vklopu Pojdi na RefLibErrorActiveSheet.ExportAsFixedFormat Vrsta: = xlTypePDF, Ime datoteke: = SvAs, Kakovost: = xlQualityStandard, IncludeDocProperties: = False, IgnorePrintAreas: = False, OpenAfterPublish: = TruePri napaki Pojdi na 0' Pošlji sporočiloČe je akcija = "SendEmail" PotemVklop Napaka Pojdi na shranjevanje samoAplikacija.Dialogi (xlDialogSendMail) .PrikažiPri napaki Pojdi na 0Pojdi na EndMacroKonec ČeShrani samo:MsgBox "Kopija tega lista je bila uspešno shranjena kot datoteka .pdf:" & Chr (13) & Chr (13) & SvAs & _"Preglejte dokument .pdf. Če dokument NE izgleda dobro, prilagodite parametre tiskanja in poskusite znova."Send_PDF = ResPojdi na EndMacroRefLibError:MsgBox "Ni mogoče shraniti kot PDF. Referenčne knjižnice ni mogoče najti."Send_PDF = NapačnoEndMacro:Končana funkcija
wave wave wave wave wave