【Excel VBA】- 如何批量转换工作表为PDF?
我的Excel VBA 教程-《VBA基础进阶篇视频教程》共43集,绝对的案例教学。目前已经在职业领官方Office教程视频网站发布以及淘宝教育发布,目前首发促销99元七折促销中(原价129元),详情请点击阅读原文,欢迎学习~。
硬广打完了,接下来进入正题。
上周六,群里有位小伙伴咨询使用什么方法或软件可以把Excel里的每个工作表根据名称分别转换为PDF,而不是把所有工作表合并为一个PDF。具体截图如下:
如果只是需要把工作表转换为PDF,那使用Acrobat软件即可达到要求,具体方法如下:
如果每个工作表转换为PDF后都是1页,那也可以通过Acrobat这款强大的软件进行页面拆分,具体方法如下:
但如果希望一步到位,直接从Excel把每一个工作表保存为相应工作表名称的PDF,那该如何操作呢?知道Microsoft Print to PDF的小伙伴就知道了,可以使用VBA代码调用微软自带的虚拟打印机,把工作表批量打印为PDF,那究竟该如何去操作呢?
代码如下(代码很简短):
Sub BatchConvertWorkSheetToPDF()
For Each sh In Worksheets
If sh.Name <> "封面" Then
sh.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
ActiveWorkbook.Path & "\" & sh.Name & ".pdf", Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
False
End If
Next
End Sub
如果Office 另存为能够选择保存为PDF格式的,都可以使用如上代码进行转换。
接下来我们一起演示一下效果:
是不是很容易即可达到转换的效果?其实转换的核心代码不用记忆,直接通过录制宏生成后加以修改即可。如有疑问,欢迎加QQ群(615356012)交流。Written by Steven in 20170327^_^
微信公众号:SaveUTime
SUT学习交流群:615356012,入群审核人:Steven
关注公众号,提高效率,节约您的时间!