如何利用excel VBA生成PDF文件

如何利用excel VBA生成PDF文件,第1张

首先,加载引用,如图

然后,在打印机中对Acrobat Distiller的打印进行设置设置(必须,否则转化出错!)

Public Sub MakePDF(ByVal strPDFFileName As String)

          Dim strPSFileName As String

          Dim xlWorksheet As Worksheet

        Dim objPdfDistiller As PdfDistiller

          strPSFileName = Left(strPDFFileName, InStrRev(strPDFFileName, "/")) &"tmpPostScript.ps"

          Set xlWorksheet = ActiveSheet

        Call xlWorksheet.PrintOut(copies:=1, preview:=False, ActivePrinter:="Acrobat Distiller", printtofile:=True, collate:=True, prtofilename:=strPSFileName)

          Set objPdfDistiller = New PdfDistiller

        Call objPdfDistiller.FileToPDF(strPSFileName, strPDFFileName, "")

          Call Kill(strPSFileName)

      End Sub

不明白为什么不用PDF插件直接生成PDF文档?

vbaexcel转成pdf没有限制范围。vba的英文全称是VisualBasicforApplications,是一门标准的宏语言。VBA语言不能单独运行,只能被office软件所调用。VBA是一种面向对象的解释性语言,通常使用来实现Excel中没有提供的功能、编写自定义函数、实现自动化功能等。

推荐下面免费的方法转成PDF试试:

方法一:使用虚拟打印机pdf factory即可,而且其他格式文件只要是能够打印,选择这个虚拟打印机,都可以做成PDF文件,很简单实用;

方法二:使用专门的转换软件,把文件转成PDF文件;

方法三:用其他虚拟打印机转成PDF文件。

方法四:用WPS本身自带的转换功能转成PDF文件。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/8109101.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-13
下一篇 2023-04-13

发表评论

登录后才能评论

评论列表(0条)

保存