用word打开PDF文档后,然后将word的内容复制粘贴到Excel中,但是发现有时候原来PDF文档里的表格里的某一行会折行到上面一行的尾部了,用什么方式可以避免这种情况发生,想让粘贴到Excel里的结构和在PDF里的结构保持一样。
用VBA怎么实现将PDF表格转到(复制到)Excel中,保持结构一致(不发生后面一行接在前一行末尾的情况)。
PDF转Excel后,某些行缺少换行符的问题
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
5条回答 默认 最新
关注 让阿豪来帮你解答,本回答参考chatgpt3.5编写提供,如果还有疑问可以评论或留言
针对这个问题,可以采取以下几个方式来避免PDF表格转到Excel后出现行折行情况: 1.打开PDF文档时将其转换成Excel格式,这样复制粘贴到Excel中时就不会出现折行情况。可以使用一些PDF转Excel的工具进行转换,例如Adobe Acrobat DC Pro或者在线PDF转Excel工具。 2.将PDF文档复制到Word中,然后在Word中进行格式调整,并将调整好的内容复制粘贴到Excel中。这样也能够避免出现折行情况。 3.使用VBA代码将PDF表格转换为Excel,这样可以保证转换后的表格结构与PDF中保持一致。以下为VBA代码示例:Sub convertPDFtoExcel() Dim acrobat As Object Set acrobat = CreateObject("AcroExch.App") Dim pdDoc As Object Set pdDoc = CreateObject("AcroExch.PDDoc") pdDoc.Open "C:\path\to\pdf\file.pdf" Dim avDoc As Object Set avDoc = CreateObject("AcroExch.AVDoc") avDoc.Open "C:\path\to\pdf\file.pdf", "" Dim excelApp As Object Set excelApp = CreateObject("Excel.Application") Dim excelBook As Object Set excelBook = excelApp.Workbooks.Add Dim excelSheet As Object Set excelSheet = excelBook.Worksheets(1) Dim jso As Object Set jso = acrobat.GetActiveDoc Dim jsObj As Object Set jsObj = jso.GetJSObject Dim jsCode As String jsCode = "this.exportAsFDF({FDF: true});" Dim fdf As String fdf = jsObj.ExecuteJS(jsCode) Dim tempFDF As String tempFDF = Environ("temp") & "\" & Format(Now(), "yyyymmddhhmmss") & ".fdf" Dim fso As Object Set fso = CreateObject("Scripting.FileSystemObject") Dim file As Object Set file = fso.CreateTextFile(tempFDF, True) file.Write fdf file.Close Dim fdfFile As Object Set fdfFile = CreateObject("FdfApp.FdfDoc") fdfFile.Open tempFDF Dim xfdf As Object Set xfdf = fdfFile.FDFExtract Dim pageno As Integer For pageno = 0 To pdDoc.GetNumPages - 1 avDoc.GoTo pageno, 0 avDoc.SelectAll Dim selection As Object Set selection = avDoc.GetSelection selection.Copy excelSheet.activate excelSheet.Cells(1, 1).select excelSheet.PasteSpecial Format:="Text", Link:=False, DisplayAsIcon:=False Dim range As Object Set range = excelSheet.Range("A1") range.Select Next pageno fdfFile.Close pdDoc.Close avDoc.Close True excelBook.SaveAs "C:\path\to\excel\file.xlsx", FileFormat:=51 excelBook.Close excelApp.Quit fso.DeleteFile tempFDF End Sub
以上VBA代码可以实现将PDF文档的所有页转换为Excel表格,并将转换后的Excel文件保存到硬盘中。
解决 无用评论 打赏 举报
悬赏问题
- ¥15 代码在keil5里变成了这样怎么办啊,文件图像也变了,
- ¥20 Ue4.26打包win64bit报错,如何解决?(语言-c++)
- ¥15 clousx6整点报时指令怎么写
- ¥30 远程帮我安装软件及库文件
- ¥15 关于#自动化#的问题:如何通过电脑控制多相机同步拍照或摄影(相机或者摄影模组数量大于60),并将所有采集的照片或视频以一定编码规则存放至规定电脑文件夹内
- ¥20 深信服vpn-2050这台设备如何配置才能成功联网?
- ¥15 Arduino的wifi连接,如何关闭低功耗模式?
- ¥15 Android studio 无法定位adb是什么问题?
- ¥15 C#连接不上服务器,
- ¥15 angular项目错误