【VBA教程】批量将PDF转为Word

文摘   教育   2024-09-16 19:50   广东  
如果你有很多PDF需要转Word,你会使用什么方式,可能大多数人都会去网上找转换工具,或者是PDF软件。今天我们来学学如何使用VBA批量将PDF转为Word文档。
如图,有两个PDF文件,需要使用VBA一次性将他们转为Word文档。

下面我们就来看看代码吧

Sub test()Dim acroapp As Object, acroAVDoc As Object, acroPDDoc As Object, jsobj As ObjectDim filePath, savePath As StringDim fso As Object, objFile As ObjectSet fso = CreateObject("scripting.filesystemobject")Set acroapp = CreateObject("AcroExch.App")Set acroAVDoc = CreateObject("AcroExch.AVDoc")filePath = Application.GetOpenFilename("文件(*.pdf),*.pdf;*.PDF", , "请选择文件", , True)For i = LBound(filePath) To UBound(filePath)    Set objFile = fso.Getfile(filePath(i))    savePath = Replace(objFile.Path, ".pdf", ".docx", , , vbTextCompare)    If acroAVDoc.Open(filePath(i), "") Then        Set acroPDDoc = acroAVDoc.GetPDDoc        Set jsobj = acroPDDoc.GetJSObject        jsobj.SaveAs savePath, "com.adobe.acrobat.docx"        acroAVDoc.Close True    End IfNext iEnd Sub

第5行:创建fso对象

第6行:创建Acrobat对象

第7行:创建PDF文档对象

第8行:使用getopenFilename获取PDF文件路径

第9行:循环选取的PDF文件路径

第10行:使用FSO获取文件

第11行:将文件路径的.pdf替换为.docx,作为保存路径

第12行:打开PDF文件

第13行:获取PDF页面

第14行:获取js对象

第15行:将PDF另存为docx格式的word文档

第16行:关闭PDF

下面来看看转换效果

虽然本文可以使用VBA批量将PDF转为Word,但是也需要安装一个软件才行,微软系的PDF处理工具Adobe Acrobat,如下图所示,没有的可以去装一个。


好了,本期教程就到这里啦,走过路过的点个关注分享一下吧,谢谢啦

求关注-求星标-求点赞-求看-求分享
最近创建了一个VBA学习交流群,如有需要进群可以添加微信 jaresfzz

Excel应用教程
主要提供Excel vba,函数,图表,数据透视表,pq,Js等教程
 最新文章