23
07 月

doc文档批量转换PDF(word宏的应用)

doc文档批量转换PDF(word宏的应用)

主要参考:
巧用WORD宏命令批量转换文件格式
Word文档另存为新文件备份(另存后文件名不变)

近日手头有些word文档要转换成pdf,正好word2010及以上版本是可以直接另存为pdf格式,排版毫无问题速度也块,问题就在于人比较懒,文件一多就想偷懒。

上网搜索word批量转换成pdf,各种虚拟打印机、插件和专用软件,不光步骤繁琐,而且有些转换成纯图片格式的pdf,质量堪忧。于是考虑word的宏命令功能。

宏命令基于VBA脚本,由于上世纪宏病毒肆掠,word本身是不显示宏选项卡的,需要在 开始–选项–自定义功能区中添加(某些版本可能在视图选项卡中默认存在)

wordvba1

然后录制宏,其过程为保存一个文件为pdf,然后停止录制。之后点击查看宏–编辑,打开VBA编辑器,将已存在的代码编辑最后如下:

Sub s2pdf()
'
' s2pdf 宏
'
'
Dim name As String  '文件名
name = "1"  '初始化
ChangeFileOpenDirectory "C:\Users\cheng\Desktop\kjxt\"   '文件夹位置

For i = 1 To 28  '文件数28,循环
Documents.Open FileName:="A" & name & ".doc"  '打开文件,对应命名A1、A2...A28
FileName = ActiveDocument.name  '获取文件名
BaseName = Left(FileName, InStrRev(FileName, ".") - 1)  '去掉文件名后缀
ActiveDocument.ExportAsFixedFormat OutputFileName:= _
BaseName, ExportFormat:=wdExportFormatPDF, _
OpenAfterExport:=False, OptimizeFor:=wdExportOptimizeForPrint, Range:= _
wdExportAllDocument, From:=1, To:=1, Item:=wdExportDocumentContent, _
IncludeDocProps:=True, KeepIRM:=True, CreateBookmarks:= _
wdExportCreateNoBookmarks, DocStructureTags:=True, BitmapMissingFonts:= _
True, UseISO19005_1:=False
ActiveDocument.Close  '关闭当前文件

name = name + 1 '递增
Next i
End Sub

没有评论