VBA_NZ系列工具NZ02:VBA读取PDF使用说明

我的教程一共九套及VBA汉英手册一部,分为初级、中级、高级三大部分。是对VBA的系统讲解,从简单的入门,到数据库,到字典,到高级的网抓及类的应用。大家在学习的过程中可能会存在困惑,这么多知识点该如何组织成自己的程序呢?VBA可否能组织一个大型的程序呢?如何让VBA形成一个工具,拿来就用呢?在我的教程完结后,我陆续推出这类技术工具资料,这类工具整合了若干多的VBA知识点,让大家感受到VBA之强大。工具资料共两个系列,一个是YZ系列,一个是NZ系列。今日给大家介绍的是VBA_NZ系列工具NZ02:VBA读取PDF使用说明f37dad8af9eafdd3a3978b742d65090a.jpeg

分享成果,随喜正能量】 脾气越大身体越差,脾气越温福报越深;声音越大修养越差,声音越柔德行越厚;性子越急智慧越低,性子越稳智慧越深;妻子越贤夫祸越少,丈夫越仁妻子越美;子女越孝父母越安,父母越慈子孙越贤。做人要方,做事需圆;小事糊涂,大事清楚;小胜靠智,大胜靠德;能忍是聪,会让是明;凡事看开,一生幸福。。

NZ02 VBA读取PDF使用说明

PDF文件大家并不陌生,很多资料的传递都是依靠这种文件格式进行,如一些报表,合同书,甚至个人的一些资料。这个格式的文件有着自己的特点,不易被修改,但是我们的一些数据信息往往来自于这类文件,那么怎么利用VBA技术读取把这类文件的信息呢?这个应用就是实现这个目的。提供给学员7项功能:

功能1:在指定路径下的PDF中查找字符串;

功能2:将指定路径下的PDF文件拆分成若干个文件,每个文件的页数是指定的;

功能3:将某个文件夹下的多个pdf文件合并,

功能4:提取pdf文件中表的数据,表中不能有合并单元格,

功能5:提取PDF中某个段落数据到EXCEL

功能6 :提取pdf文件中表的数据,表中可以有合并单元格

功能7:将文件夹下的多个PDF转变成WORD文件,并放在同路径下的WORD文件夹下(事前建立)

75fd3977bb3389f4394152e64e986706.jpeg

一 准备工作

当你得到这个应用技术后,可以看到两个文件夹及一个使用的文档说明。

e5356a5625a7eb2548e6d7bc43490815.jpeg

1 我们首先打开“adobeacrobatXpro_setup”文件夹,安装一下ADODB,这个文件夹下有安装的说明,如果按照过程出现异常,按照这个说明进行处理即可。安装ADODB的目的是要获得VBA中利用的控件。

2 安装好后,我们打开“程序及示例文件文件”这个文件夹,这个文件如下截图:

e050fd177ceca1bdaf0130d00713ef02.jpeg

这个文件夹中包含两个文件夹和两个文件,其中“word”文件夹是空的,用于文档装换后的目的地址;“测试文档”中包含我们可以用于测试各个功能的PDF文件;PDFChangeTo.xlam文件是加载项文件,是整个文件的技术核心部分,如果您得到的是不开放源码的资料,您是无法打开这个文件并看到代码的,如果您得到的是开放源码的资料,可以输入密码“123456789”打开这个加载项,并看到里面的代码,但是建议您不要轻易打开。TestPDFChangeTo.xlsm文件是我们应用这个加载项的程序,提供了应用的界面,我们打开这个文件,截图如下:

47b296fe6ed9aa41e5d7fa4ef64d8b60.jpeg

以上的界面截图提供了各项功能的运行按钮及要提供的输入参数。您只要在这个界面中按照要求输入相应的参数就可以了。

二 功能1:在指定路径下的PDF中查找字符串

测试参数输入,在D2单元格中输入路径地址“D:\VBA笔记\VBA_PDF\程序及示例文件文件\测试文档”;在E2单元格中输入文件名search;在F2单元格中输入我们要查找的字符。

15d79af565fb2ca4f3b339de43e881ae.jpeg

点击运行按钮mynzTestA.

结果:

9a3b69dfe5ebc1f29f70839b72d015ed.jpeg

三 功能2:拆分PDF文件

测试参数输入,在D4单元格中输入路径地址:D:\VBA笔记\VBA_PDF\程序及示例文件文件\测试文档;在E4单元格中输入文件名”Fiddler调试”;在F4单元格中输入我们要形成每个文件的页数,这里我们选择10。

5b039d43e3e1d10d1940bf7d00433691.jpeg

点击运行按钮mynzTestB.

结果:

5c3e1b25bfcb71f59d8b14f13b499771.jpeg

以上我们看到,已经将”Fiddler调试文件,分隔成每10页一个文件,运行也是非常的快。

四 功能3:将某个文件夹下的多个pdf文件合并

测试参数输入,在D6单元格中输入路径地址:D:\VBA笔记\VBA_PDF\程序及示例文件文件;在E6单元格中输入文件名”myMergePDF”;在F6单元格为空,没有参数。如下截图:

cb3ac2433c0496de8ea3666ce58f5eda.jpeg

cf79ab153e88a331ee115969a42c358d.jpeg

点击运行按钮mynzTestC.

结果:

244b8612957ec1f62a5dfb4881bd5c1b.jpeg

以上结果,已经将“search文件”和“文章”文件合并到“myMergePDF”文件。当然,你也可以在这个文件夹下放入多个PDF文件。

五 功能4:提取pdf文件中表数据(表中不能有合并单元格)

测试参数输入:在D8单元格中输入路径地址“D:\VBA笔记\VBA_PDF\程序及示例文件文件\测试文档”;在E8单元格中输入文件名”myPDF(无合并单元格)”;在F8单元格为空,没有参数。如下截图:

cadc65232186ca0479418e4fdf3ecae2.jpeg

点击运行按钮mynzTestD.

结果:

33f0edb7a7975ce9487530b37ac49b3f.jpeg

程序运行后,会形成一个新的文件,把表格中的内容放到新的工作簿文件中。

六 功能5:提取PDF中某个段落数据到EXCEL

测试参数输入:在D10单元格中输入路径地址“D:\VBA笔记\VBA_PDF\程序及示例文件文件\测试文档”;在E10单元格中输入文件名“文章”;在F8单元格输入“要提取的段落号”这里我们输入1。如下截图:

c550476a420c17da6c343b5cae21ef51.jpeg

点击运行按钮mynzTestE.

结果:

38ef87ad65df36f3d0757ac4abd0b670.jpeg

程序运行后,会形成一个新的文件,把PDF文件“文章”中的第一段内容放到新的工作簿文件中。

七 功能6:提取pdf文件中表的数据(可以有合并单元格)

测试参数输入:在D12单元格中输入路径地址“D:\VBA笔记\VBA_PDF\程序及示例文件文件\测试文档”;在E12单元格中输入文件名“myPDF(有合并单元格)”;在F12单元格输入表间隔参数,是指两个表的间隔行数,这里用的是3。如下截图:

ade5928f5e2609c4e3a226e412198870.jpeg

点击运行按钮mynzTestF.

结果:

190d2360da39a01b9c122bcb44c14552.jpeg

程序运行后,会形成一个新的文件,把PDF各个表格中的内容放到新的工作簿文件中。

八 功能7:将文件夹下的多个PDF转变成WORD文件

测试参数输入:在D14单元格中输入路径地址“D:\VBA笔记\VBA_PDF\程序及示例文件文件”;没有其他参数,如下截图:

0da6474670378dec46d3ff3b06e51872.jpeg

3d442df9084c08055060821e96da6e61.jpeg

点击运行按钮mynzTestG.

结果:

688fde4f47bbb601af310fffb5b66f32.jpeg

程序运行后,会在word文件夹中形成相应新的word文件.

九 技术总结

这个应用中,我们大体上解决了VBA读取PDF文件中常见的七大问题:

功能1:在指定路径下的PDF中查找字符串;

功能2:将指定路径下的PDF文件拆分成若干个文件,每个文件的页数是指定的;

功能3:将某个文件夹下的多个pdf文件合并,

功能4:提取pdf文件中表的数据,表中不能有合并单元格,

功能5:提取PDF中某个段落数据到EXCEL

功能6 :提取pdf文件中表的数据,表中可以有合并单元格

功能7:将文件夹下的多个PDF转变成WORD文件,并放在同路径下的WORD文件夹下(事前建立)

但是,由于有些PDF的文件完全完美的读取对于VBA而言是非常困难的,还不能够完全实现,也希望学员的技术在我的基础上有所突破,

【分享成果,随喜正能量】

52ea3fbb7613d0377aa5ee67eff112d9.jpeg

下面是NZ系列VBA应用工具:

2cd858ea37bd749ca531ef1a85a34221.jpeg

f403a8322acd2ec04dfc7b40a94fe095.jpeg

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/445530.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Ubuntu 安装谷歌拼音输入法

一、Fcitx 安装 在Ubuntu 下,谷歌拼音输入法是基于Fcitx输入法的。所以,首先需要安装Fcitx。一般来说,Ubuntu最新版中都默认安装了Fcitx,但是为了确保一下,我们可以在系统终端中运行如下命令: sudo apt ins…

第15章——西瓜书规则学习

1.序贯覆盖 序贯覆盖是一种在规则学习中常用的策略,它通过逐步构建规则集来覆盖训练数据中的样本。该策略采用迭代的方式,每次从训练数据中选择一部分未被覆盖的样本,学习一条能够覆盖这些样本的规则,然后将这条规则加入到规则集中…

ArmSoM规划开发基于RK3576的开发套件

ArmSoM正计划推出一款新的产品,这款产品将采用强大的RK3576芯片。 本文将为您介绍我们的新产品搭载的RK3576性能参数,以及它如何为您提供卓越的性能和功能。 RK3576处理器 RK3576处理器是一款强大的处理器,具备出色的性能和多样化的功能&a…

Web Worker:JavaScript的后台任务解决方案

🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课签约作者、上架课程《Vue.js 和 E…

eFuse在汽车域控制器架构中如何提供更智能的保护?

汽车应用的电气化和自动化趋势推动了域控制器的兴起,用以减轻线缆重量并将车辆架构简化为多个局部化的电源中心。设计人员可以利用这种新兴架构,将传统保险丝和机械继电器替换为更紧凑的电子保险丝 (eFuse),以提供更先进的保护功能&#xff0…

UE5 局域网联机,寻找会话失败。

目录 参考资料: 尝试解决办法 1.1在【项目名.Build.cs】脚本中添加该行,添加后关闭编辑器,重新生成解决方案。​编辑 2.检查是否在同一个C类子网 参考资料: 1.Cant find session in LAN - Programming & Scripting / Mul…

【Claude3】利用Python中完成对Bedrock上的Claude的API调用

文章目录 1. 前期准备工作2. 安装和配置AWS CLI v23. 使用AWS configure命令配置AWS凭据4. 安装访问Bedrock的SDK5. 访问Amazon Bedrock UI6. 订阅Bedrock上的Claude模型7. 通过CLI命令列出所有可用的Claude模型8. 向Claude 3 Sonnet on Bedrock生成文本9. 参考链接 1. 前期准备…

Building Systems with the ChatGPT API

Building Systems with the ChatGPT API 本文是 https://www.deeplearning.ai/short-courses/building-systems-with-chatgpt/ 这门课程的学习笔记。 文章目录 Building Systems with the ChatGPT APIWhat you’ll learn in this course Language Models, the Chat Format and…

MySQL中常用的操作语句已汇总

目录 一、库语句 1.查询现有数据库 2.创建数据库 3.选中数据库 ​编辑 4.删除数据库 二、初阶表操作 1.查看数据库现有表 2.查看表结构 3.创建表 4.删除表 5.全列查询 6.删除表2 7.修改操作 三、插入操作 1.全列插入 2.指定列插入 3.一次插入多组数据 4.插入…

【AI视野·今日Robot 机器人论文速览 第八十二期】Tue, 5 Mar 2024

AI视野今日CS.Robotics 机器人学论文速览 Tue, 5 Mar 2024 Totally 63 papers 👉上期速览✈更多精彩请移步主页 Interesting: 📚双臂机器人拧瓶盖, (from 伯克利) website: https://toruowo.github.io/bimanual-twist 📚水下抓取器, (from …

交易平台开发:构建安全/高效/用户友好的在线交易生态圈

在数字化浪潮的推动下,农产品现货大宗商品撮合交易平台已成为连接全球买家与卖家的核心枢纽。随着电子商务的飞速发展,一个安全、高效、用户友好的交易平台对于促进交易、提升用户体验和增加用户黏性至关重要。本文将深入探讨交易平台开发的关键要素&…

Unity3d C#实现文件(json、txt、xml等)加密、解密和加载(信息脱敏)功能实现(含源码工程)

前言 在Unity3d工程中经常有需要将一些文件放到本地项目中,诸如json、txt、csv和xml等文件需要放到StreamingAssets和Resources文件夹目录下,在程序发布后这些文件基本是对用户可见的状态,造成信息泄露,甚至有不法分子会利用这些…

1908_Arm Cortex-M3的实现

1908_Arm Cortex-M3的实现 全部学习汇总: g_arm_cores: ARM内核的学习笔记 (gitee.com) 这是第一次看一份这样的手册,之前的MCU编程基本上就是专注于软件接口方面。而OS等方面的一些功能基本上都是用了现成的解决方案,因此也就没有过多的关注…

Linux centos6安装rz、sz命令

centos6传文件提示command not found # yum install lrzsz 提示错误 wget http://www.ohse.de/uwe/releases/lrzsz-0.12.20.tar.gz 下载离线包 https://www.ohse.de/uwe/software/lrzsz.html 下载最新版本 [rootnode1 ~]# tar -zxvf lrzsz-0.12.20.tar.gz …

pytorch_retinaface训练Resnet50_Final.pth过程+无图版安装Nvidia+CUDA驱动GPU

背景 当前处于人脸检测分支,项目就是retinaface官方的代码加上数据集目录结构,目的是训练出最后的模型文件Resnet50_Final.pth 代码 https://gitee.com/congminglst/pytorch_-retinaface.git 项目结构与设计 图片数据集采用widerface, 前…

Go编译报错 link: running gcc failed: exit status 1(已解决)

背景 在对一个开源的Go程序二次开发 重新编译时 , 报错截图如下 报错文字如下:关键信息 link: running gcc failed: exit status 1 $ go build -o orchestrator-didi -i go/cmd/orchestrator/main.go go build: -i flag is deprecated # command-li…

2024/3/10打卡借教室——二分+差分

题目 在大学期间,经常需要租借教室。 大到院系举办活动,小到学习小组自习讨论,都需要向学校申请借教室。 教室的大小功能不同,借教室人的身份不同,借教室的手续也不一样。  面对海量租借教室的信息,我们自…

TOMCAT多实例及调优

目录 引言 一、JVM相关理论 (一)JVM组成 1.JVM组成部分 2.JVM运行时数据区 (二)垃圾回收 1.确定垃圾 2.垃圾收集算法 二、java内存调整相关参数 (一)JVM 内存常用相关参数 (二&#…

《在“裸奔”时代下如何保护网络隐私》

引言 在信息时代的今天,网络已经成为我们生活中不可或缺的一部分。然而,随着网络的普及和技术的发展,网络安全和隐私保护问题也变得越来越严峻。特别是在这个所谓的“裸奔”时代,我们的个人信息和隐私正面临着前所未有的挑战。因此,保护网络隐私变得尤为重要。 网络安全…

通过Step Back提示增强LLM的推理能力

原文地址:enhancing-llms-reasoning-with-step-back-prompting 论文地址:https://arxiv.org/pdf/2310.06117.pdf 2023 年 11 月 6 日 Introduction 在大型语言模型不断发展的领域中,一个持续的挑战是它们处理复杂任务的能力,这…