VBA实践+为PDF文档插入书签

声明:文章仅供参考,尝试请注意备份文件

作用:打开pdf文档,查找到指定字符串,然后插入书签

以下代码先设置一个待查找字符串,用findtext方法查找,然后用createchild方法插入书签。代码的运行环境为Win8.1,Word2010 VBA,Acrobat Pro DC,在本机测试成功。

使用到的主要方法为AVDoc.FindText和BookMark.createChild。

AVDoc.FindText有4个参数:

  1. szText,要查找的字符串
  2. bCaseSensitive,是否区分大小写,正数为区分,0为不区分
  3. bWholeWordsOnly,是否匹配整个单词,正数为匹配,0为不匹配
  4. bReset,查找开始的位置,正数则从第一页开始,0则从当前页开始

BookMark.createChild有3个参数

  1. cName,用户在导航面板中看到的书签的名称。
  2. cExpr,单击书签时要执行的表达式,为JavaScript
  3. nIndex,(可选)在书签的子数组中,创建新子书签的基于0的索引。默认值为0。
Sub Pdf添加书签()
'https://www.mrexcel.com/board/threads/create-pdf-bookmarks-while-combinding-files-with-vba-in-excel.847138/
'http://pharma-sas.com/how-to-add-multiple-levels-of-bookmark-into-pdf-via-vba/
'为某书添加书签
Dim App As New Acrobat.AcroApp
Dim PDoc As New Acrobat.AcroPDDoc, AVDoc As New Acrobat.AcroAVDoc
Dim Jso As Object
Dim BMark As Object '不能声明为Acrobat.AcroPDBookmark,否则createchild方法不可用。
Dim PFile As String, WordTF As String, PageNum As LongPFile = "F:userdataDesktop提取PDF数据-需要修改客户需求2模具工业标准件目录.pdf" '要插入书签的pdf文件
WordTF = "A 型定位环"If PDoc.Open(PFile) ThenSet Jso = PDoc.GetJSObjectSet AVDoc = PDoc.OpenAVDoc("")  '获得一个可见文档Jso.bookmarkroot.Remove '移除原有的所有书签
End IfIf AVDoc.FindText(WordTF, 0, 0, 1) Then '从第一页开始,如果找到了字符串WordTF一次PageNum = AVDoc.GetAVPageView.GetPageNum '获得当前页码Set BMark = Jso.bookmarkroot '设置书签根对象BMark.createChild WordTF, "this.pageNum=" & PageNum, 0 '创建一个书签PDoc.Save 1, PFile
End IfPDoc.Close
App.CloseAllDocs
App.Hide
App.Exit
Set AVDoc = Nothing
Set PDoc = Nothing
Set App = Nothing
Set BMark = Nothing
Set Jso = Nothing
End Sub

delphi memo 查找字符 下行插入_VBA实践+用编程代码为PDF文档插入书签相关推荐

  1. delphi memo 查找字符 下行插入_Vim高手,从来不用鼠标2——替换、撤销、缩进、查找

    本文章原创首发于公众号:编程三分钟 vim 替换.撤销.缩进.查找 上一次我们掌握了移动.跳转.定位.操作(删除.复制.粘贴),基本使用vim脱离鼠标完全是可以做到的了.速记如下: 移动: h,l,j ...

  2. PDF怎么插入页?将页面添加到 PDF 文档的 3 种简单方法

    得益于现代技术,我们现在可以轻松地合并.创建.编辑 PDF 并执行更多操作.使用专业的PDF程序在PDF文档中插入一页问题不大.这篇文章将介绍如何使用 奇客PDF编辑 和其他四个桌面和在线程序向 PD ...

  3. (一)JAVA基于OPENXML的word文档插入、合并、替换操作系列之基础篇

    (一)JAVA基于OPENXML的word文档插入.合并.替换操作系列之基础篇 前言 什么是Open Xml? Open XML SDK 这系列笔记要做点什么? 涉及技术点 关于word.openxm ...

  4. PDF文档如何用关键字精确查找?

    有时我们打开一个PDF文档后,由于页面较多,为了快速查看某一内容,使用查找关键字快速定位是比较方便的,那么应该如何操作才能进行查找呢? 首先用极速PDF编辑器打开文档后,直接使用快捷键"Ct ...

  5. (五)、JAVA基于OPENXML的word文档插入、合并、替换操作系列之word文件合并[支持多文件]

    (五).JAVA基于OPENXML的word文档插入.合并.替换操作系列之word文件合并[支持多文件] 二.word合并的多种方案简单比较 三.基于Open Xml WordprocessingML ...

  6. java openxml 操作 word,(三)、JAVA基于OPENXML的word文档插入、合并、替换操作系列之html转word...

    (三).JAVA基于OPENXML的word文档插入.合并.替换操作系列之html转word 系列笔记传送门 富文本转word文档 准备待转换内容 内容清理与格式化 转换成word文档 输出结果展示 ...

  7. 3-MongoDB常用的命令-数据库创建-文档插入

    目录: 一.连接数据库 二.案例需求 三.数据库的操作 3.1 选择和创建数据库 3.2 数据库的删除 四.集合的操作 4.1 集合的显式创建(了解) 4.2 集合的隐式创建 4.3 集合的删除 五. ...

  8. Python 操作Word文档插入图片和表格实例演示

    Python 操作Word文档插入图片和表格实例演示 效果图 实现过程 ① python-docx 库安装 ② word 文档插入图片演示 ③ word 文档插入表格演示 [ 文章推荐 ] Pytho ...

  9. 加载pdf_Java 插入附件到PDF文档

    在文档中插入附件,可以起到与源文档配套使用的目的,以一种更简便的方式对文档起到补充说明的作用.下面将介绍通过Java编程插入附件到PDF文档中的方法.这里插入的文档可以是常见的文档类型,如Word.E ...

  10. python 给word添加背景图片_Python如何使用word文档插入图片和表格

    Python如何使用word文档插入图片和表格 发布时间:2020-10-26 13:49:29 来源:亿速云 阅读:101 作者:挣扎的蓝藻 这篇文章运用简单易懂的例子给大家介绍Python如何使用 ...

最新文章

  1. java元婴期(21)----java进阶(spring(5)---事务管理AOP事务管理(全自动)spring整合Junit)
  2. 虚拟函数的静态决议 和 RTTI 小例子
  3. 【sprinb-boot】lib分离打包
  4. linux zip打包_还在百度Linux命令?推荐一套我用起来特顺手的命令!(JAVA)
  5. 这家共享单车确认已坑12.5万用户 总金额超2512万元
  6. c/c++教程 - 1.9 指针 空指针 野指针 const修饰指针 指针常量 常量指针 指针和数组 指针和函数
  7. sgu 101 domino
  8. HTML:frame导航框架的实现方法
  9. (原创)安卓抓包方案分享
  10. css居中对齐的几种方法
  11. 关于力学环境中振动试验的知识
  12. OpenCV4,5个方法让你从小白到大佬
  13. ubuntu Rhythmbox 乱码解决
  14. Java工具类实现excel转pdf结果几乎一模一样
  15. Arduino六足机器人
  16. PSP开发简明教程(2)
  17. Linux查看服务器SN序列码
  18. 海康直连工具 海康测试工具,工程宝测试软件等
  19. mne进行ica分析
  20. 有趣实用的app分享,强烈推荐

热门文章

  1. Linux下Socket通信(TCP实现)
  2. LintCode_13 字符串查找
  3. 一些老程序员不错的经验分享
  4. 解决QSqlTableModel::setData()崩溃的问题
  5. 【java与智能设备】单选框 复选框 监听事件
  6. 从AssetBundle中获取图片,给Image 组件替换Sprite
  7. 将C#的Dic转成Lua的Table将C#的List转成Lua的Table
  8. delphi报列表索引越界怎么处理_深入了解散列表
  9. 求栈中元素个数算法_嵌入式必知基础算法(一)
  10. 让网页附件为Word或Excel的文件,下载时直接弹出下载对话框,而不打开它