如何利用excel VBA生成PDF文件?

 我来答
heart韩晨晖
2018-01-20 · TA获得超过1998个赞
知道小有建树答主
回答量:30
采纳率:0%
帮助的人:5096
展开全部

首先,加载引用,如图

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

love李包子
2018-01-20 · TA获得超过1222个赞
知道小有建树答主
回答量:25
采纳率:0%
帮助的人:3266
展开全部

使用以下程序:

Sub test()

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:="C:\Documents and Settings\Administrator\桌面\test.pdf"

End Sub

这一个程序就够了 就是这么简单

PDF默认保存位置为桌面,名字叫TEST,名字路径你可以直接改下。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
刘瑞涛1234
2018-01-16 · TA获得超过1.2万个赞
知道小有建树答主
回答量:179
采纳率:100%
帮助的人:19.2万
展开全部
  • Sub PDF()

  • ActiveSheet.ExportAsFixedFormat xlTypePDF, "D:" & "" & ActiveSheet.Name & "-" & Format(Now, "yyyymmddhhmmss")

  • End Sub

  • 复制代码
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式