ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: Jingle6688

[求助] VBA如何批量获取PDF文件中的内容

  [复制链接]

TA的精华主题

TA的得分主题

发表于 2013-2-20 18:51 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
opiona 发表于 2013-2-19 18:52
附件内是VB内的实例,
PDF控件是正式版了,有注册码了
但是要求PDF是能编辑的那种,不要是扫描的!

PDF控件是正式版

TA的精华主题

TA的得分主题

发表于 2013-8-14 13:40 | 显示全部楼层
Jingle6688 发表于 2013-2-17 17:14
谢谢,好像这个只是浏览内容啊。我现在是要读取PDF里面的字符。

你找到方法读取内容了吗,我也想知道

TA的精华主题

TA的得分主题

发表于 2017-6-19 17:46 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
今天遇到了同样的问题,要根据PDF的内容对文件重命名
上网查了资料,可能是因为公司没装完整的软件,用不了
后来想了一个办法
用PDF阅读器打开文件
模拟键盘快捷键将文件另存为txt到桌面
手动把生成的TXT文件放到新文件夹
提取TXT文件指定行的文本
因为是模拟键盘按键操作,有时会漏掉几个文件
  1. Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
  2. Sub A_PDF转TXT()

  3. Dim fsys As New FileSystemObject
  4. Dim Data_path As String

  5. Dim n As Integer


  6. t = Timer
  7. Data_path = ThisWorkbook.Path & "\数据源"

  8. n = 1

  9. Sheets("列表").Cells.Clear
  10. Sheets("列表").[A1:C1].Value = Array("PDF", "TXT", "公司")

  11. Set xfolder = fsys.GetFolder(Data_path)
  12. For Each xfile In xfolder.Files
  13.     If xfile.Name Like "*.pdf" Then
  14.         n = n + 1
  15.         Sheets("列表").Cells(n, 1).Value = xfile.Name
  16.         Sheets("列表").Cells(n, 2).Value = Replace(xfile.Name, "pdf", "txt")
  17.    
  18.         Shell "C:\Program Files\Adobe\Reader 9.0\Reader\AcroRd32.exe " & xfile.Path
  19.         Shell "C:\Program Files\Adobe\Reader 9.0\Reader\AcroRd32.exe " & xfile.Path
  20.         
  21.         Sleep 500
  22.         Application.SendKeys "%F"
  23.         Sleep 500
  24.         Application.SendKeys "V"
  25.         Sleep 500
  26.         Application.SendKeys "~"
  27.         Sleep 500
  28.         Application.SendKeys "%{F4}"

  29.       
  30.     End If
  31. Next xfile
  32. MsgBox ("运行结束,请将桌面的TXT文件放入TXT文件夹中。")
  33. End Sub
  34. Sub B_提取TXT公司并改名()

  35. Dim fsys As New FileSystemObject
  36. Dim Data_path1 As String
  37. Dim Data_path2 As String
  38. Dim n As Integer

  39. Data_path1 = ThisWorkbook.Path & "\TXT"
  40. Data_path2 = ThisWorkbook.Path & "\数据源"

  41. n = 2

  42. Do While Sheets("列表").Cells(n, 2).Value <> ""
  43.     On Error Resume Next
  44.     Set A = fsys.OpenTextFile(Data_path1 & Sheets("列表").Cells(n, 2).Value, 1)
  45.     For i = 1 To 33
  46.         A.ReadLine
  47.     Next i
  48.     Sheets("列表").Cells(n, 3).Value = A.ReadLine
  49.     Name Data_path2 & Sheets("列表").Cells(n, 1).Value As Data_path2 & Sheets("列表").Cells(n, 3).Value & ".pdf"
  50.     n = n + 1
  51. Loop

  52. End Sub


复制代码

根据PDF内容批量修改PDF文件名.zip (19.74 KB, 下载次数: 473)




评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2018-5-14 09:36 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
我也遇到同样的问题的,不知道有没有找到好的方法了。

TA的精华主题

TA的得分主题

发表于 2019-4-23 22:15 | 显示全部楼层
opiona 发表于 2013-2-19 18:52
附件内是VB内的实例,和代码

PDF控件是正式版了,有注册码了

求解:1.能编辑的,不要扫描的那种,,不明白?2.控件part1~6,如何区分使用?谢了。

TA的精华主题

TA的得分主题

发表于 2019-4-23 22:16 | 显示全部楼层
opiona 发表于 2013-2-19 18:52
附件内是VB内的实例,和代码

PDF控件是正式版了,有注册码了

完美注册的,是不是没水印了?

TA的精华主题

TA的得分主题

发表于 2019-8-18 12:48 | 显示全部楼层
AS850629754 发表于 2017-6-19 17:46
今天遇到了同样的问题,要根据PDF的内容对文件重命名
上网查了资料,可能是因为公司没装完整的软件,用不 ...

请问您为什么        
Shell "C:\Program Files\Adobe\Reader 9.0\Reader\AcroRd32.exe " & xfile.Path
Shell "C:\Program Files\Adobe\Reader 9.0\Reader\AcroRd32.exe " & xfile.Path
这个为什么要用两次呢?

TA的精华主题

TA的得分主题

发表于 2019-8-20 10:25 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
AS850629754 发表于 2017-6-19 17:46
今天遇到了同样的问题,要根据PDF的内容对文件重命名
上网查了资料,可能是因为公司没装完整的软件,用不 ...

为什么提示找不到工程?

TA的精华主题

TA的得分主题

发表于 2019-9-7 15:30 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
ywzx703 发表于 2019-8-20 10:25
为什么提示找不到工程?

前期绑定fso了吗?

TA的精华主题

TA的得分主题

发表于 2019-9-7 15:30 | 显示全部楼层
冬霜之子 发表于 2019-8-18 12:48
请问您为什么        
Shell "C:\Program Files\Adobe\Reader 9.0\Reader\AcroRd32.exe " & xfile.Path
...

过了两年多了,忘了
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-24 12:49 , Processed in 0.037043 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表