如何利用excel VBA生成PDF文件

通过按钮单击实现,谢谢... 通过按钮单击实现,谢谢 展开
 我来答
WDZZYC
2013-10-23 · TA获得超过751个赞
知道小有建树答主
回答量:849
采纳率:69%
帮助的人:403万
展开全部

首先,加载引用,如图

然后,在打印机中对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文档?

追问
想在不同的计算机实现以上功能,插件的话需要多安装一个程序。谢谢您,我试一下。
heart韩晨晖
2018-03-31 · TA获得超过1998个赞
知道小有建树答主
回答量:30
采纳率:0%
帮助的人:5094
展开全部

首先,加载引用,如图

然后,在打印机中对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

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
COUNTIFABS
2013-10-23 · TA获得超过2154个赞
知道大有可为答主
回答量:1594
采纳率:55%
帮助的人:1231万
展开全部
Sub test()
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:="C:\Documents and Settings\Administrator\桌面\test.pdf"
End Sub


EXCEL 2010完美测试通过。PDF默认保存位置为桌面,名字叫TEST,名字路径你可以直接改下。


要发布的工作表也可以改。

更多追问追答
追问
太给力了!!2007也能用,我想额外请问您,当我在用户窗体中插入FLASH,进入窗体时就出现了,如下的警告(此文档进入的内容可能对您的计算机有害),不知道您能不能帮忙修改。
追答
看不到东西与提示,最好有附件或图片。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
嗨格式
2020-07-17 · 百度认证:昆山开心盒子软件有限公司官方账号
嗨格式
嗨格式是苏州开心盒子软件有限公司旗下的独立品牌。苏州开心盒子软件有限公司是一家专注软件研发的互联网科技公司。
向TA提问
展开全部

怎样用excel做出PDF文件

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友066dc732e
2013-10-23 · TA获得超过1.2万个赞
知道大有可为答主
回答量:5675
采纳率:33%
帮助的人:1857万
展开全部
生成PDF不用VBA,EXCEL本身就自带有这个功能,“另存为”——PDF格式,可以通过弹出的保存框中“选项”设置转换属性。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式