Excel VBA Tallenna nimellä (Tulosta) PDF -muotoon

Tämä opetusohjelma osoittaa, kuinka PDF -tiedosto tallennetaan / tulostetaan Excel VBA: ssa.

Tulosta PDF -muotoon

Tämä yksinkertainen toimenpide tulostaa ActiveSheetin PDF -tiedostoksi.

123456 YksinkertainenTulostaToPDF ()ActiveSheet.ExportAsFixedFormat Type: = xlTypePDF, Tiedostonimi: = "demo.pdf", Laatu: = xlQualityStandard, _IncludeDocProperties: = False, IgnorePrintAreas: = False, OpenAfterPublish: = TrueEnd Sub

Olen myös luonut toiminnon, jossa on virheiden käsittely jne., Joka tulostaa ActiveSheetin PDF -muotoon:

12345678910111213141516171819202122232425262728293031323334353637383940 AlitulostusPFF ()Soita Save_PDFEnd SubToiminto Save_PDF () Booleanina Kopioi taulukot uuteen PDF-tiedostoon sähköpostin lähettämistä vartenDim Thissheet merkkijonona, ThisFile As String, PathName As StringDim SvAs merkkijononaApplication.ScreenUpdating = Väärä'Hae tiedoston tallennusnimiThissheet = ActiveSheet.NameThisFile = ActiveWorkbook.NamePathName = ActiveWorkbook.PathSvAs = PathName & "\" & Thissheet & ".pdf"'Aseta tulostuslaatuVirhe Jatka seuraavaksiActiveSheet.PageSetup.PrintQuality = 600Virhe SelväVirhe GoTo 0'Opeta käyttäjää lähettämäänVirhe GoTo RefLibErrorActiveSheet.ExportAsFixedFormat Type: = xlTypePDF, Tiedostonimi: = SvAs, Quality: = xlQualityStandard, IncludeDocProperties: = False, IgnorePrintAreas: = False, OpenAfterPublish: = TrueVirhe GoTo 0TallennaVain:MsgBox "Kopio tästä taulukosta on tallennettu .pdf -tiedostoksi:" & Chr (13) & Chr (13) & SvAs & _"Tarkista .pdf -asiakirja. Jos asiakirja EI näytä hyvältä, säädä tulostusparametreja ja yritä uudelleen."Save_PDF = TottaGoTo EndMacroRefLibError:MsgBox "Ei voi tallentaa PDF -tiedostona. Viitekirjastoa ei löydy."Save_PDF = VääräEndMacro:Lopeta toiminto

Toiminto palauttaa TOSI tai EPÄTOSI, jos tulostus PDF -tiedostoon onnistui tai ei.

Tallenna ja lähetä PDF -toiminto

Tämä toiminto tallentaa ActiveSheetin PDF -tiedostona ja liittää (valinnaisesti) PDF -tiedoston sähköpostiin (olettaen, että Outlook on asennettu):

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 Alatesti_Tallenna_PDF ()Soita Send_PDF ("SendEmail")End SubToiminto Send_PDF (valinnainen toiminto As String = "SaveOnly") Boolen kopioi taulukot uuteen PDF-tiedostoon sähköpostin lähettämistä vartenDim Thissheet merkkijonona, ThisFile As String, PathName As StringDim SvAs merkkijononaApplication.ScreenUpdating = Väärä'Hae tiedoston tallennusnimiThissheet = ActiveSheet.NameThisFile = ActiveWorkbook.NamePathName = ActiveWorkbook.PathSvAs = PathName & "\" & Thissheet & ".pdf"'Aseta tulostuslaatuVirhe Jatka seuraavaksiActiveSheet.PageSetup.PrintQuality = 600Virhe SelväVirhe GoTo 0'Opeta käyttäjää lähettämäänVirhe GoTo RefLibErrorActiveSheet.ExportAsFixedFormat Type: = xlTypePDF, Tiedostonimi: = SvAs, Quality: = xlQualityStandard, IncludeDocProperties: = False, IgnorePrintAreas: = False, OpenAfterPublish: = TrueVirhe GoTo 0' Lähettää sähköpostiaIf action = "SendEmail" SittenVirhe GoTo SaveOnlyApplication.Dialogs (xlDialogSendMail) .NäytäVirhe GoTo 0GoTo EndMacroLoppu JosTallennaVain:MsgBox "Kopio tästä taulukosta on tallennettu .pdf -tiedostoksi:" & Chr (13) & Chr (13) & SvAs & _"Tarkista .pdf -asiakirja. Jos asiakirja EI näytä hyvältä, säädä tulostusparametreja ja yritä uudelleen."Send_PDF = TottaGoTo EndMacroRefLibError:MsgBox "Ei voi tallentaa PDF -tiedostona. Viitekirjastoa ei löydy."Send_PDF = VääräEndMacro:Lopeta toiminto
wave wave wave wave wave