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

2024-03-11 08:04

本文主要是介绍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

这篇关于VBA_NZ系列工具NZ02:VBA读取PDF使用说明的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/797186

相关文章

Java使用Thumbnailator库实现图片处理与压缩功能

《Java使用Thumbnailator库实现图片处理与压缩功能》Thumbnailator是高性能Java图像处理库,支持缩放、旋转、水印添加、裁剪及格式转换,提供易用API和性能优化,适合Web应... 目录1. 图片处理库Thumbnailator介绍2. 基本和指定大小图片缩放功能2.1 图片缩放的

Python使用Tenacity一行代码实现自动重试详解

《Python使用Tenacity一行代码实现自动重试详解》tenacity是一个专为Python设计的通用重试库,它的核心理念就是用简单、清晰的方式,为任何可能失败的操作添加重试能力,下面我们就来看... 目录一切始于一个简单的 API 调用Tenacity 入门:一行代码实现优雅重试精细控制:让重试按我

MySQL中EXISTS与IN用法使用与对比分析

《MySQL中EXISTS与IN用法使用与对比分析》在MySQL中,EXISTS和IN都用于子查询中根据另一个查询的结果来过滤主查询的记录,本文将基于工作原理、效率和应用场景进行全面对比... 目录一、基本用法详解1. IN 运算符2. EXISTS 运算符二、EXISTS 与 IN 的选择策略三、性能对比

SpringBoot多环境配置数据读取方式

《SpringBoot多环境配置数据读取方式》SpringBoot通过环境隔离机制,支持properties/yaml/yml多格式配置,结合@Value、Environment和@Configura... 目录一、多环境配置的核心思路二、3种配置文件格式详解2.1 properties格式(传统格式)1.

使用Python构建智能BAT文件生成器的完美解决方案

《使用Python构建智能BAT文件生成器的完美解决方案》这篇文章主要为大家详细介绍了如何使用wxPython构建一个智能的BAT文件生成器,它不仅能够为Python脚本生成启动脚本,还提供了完整的文... 目录引言运行效果图项目背景与需求分析核心需求技术选型核心功能实现1. 数据库设计2. 界面布局设计3

使用IDEA部署Docker应用指南分享

《使用IDEA部署Docker应用指南分享》本文介绍了使用IDEA部署Docker应用的四步流程:创建Dockerfile、配置IDEADocker连接、设置运行调试环境、构建运行镜像,并强调需准备本... 目录一、创建 dockerfile 配置文件二、配置 IDEA 的 Docker 连接三、配置 Do

解决pandas无法读取csv文件数据的问题

《解决pandas无法读取csv文件数据的问题》本文讲述作者用Pandas读取CSV文件时因参数设置不当导致数据错位,通过调整delimiter和on_bad_lines参数最终解决问题,并强调正确参... 目录一、前言二、问题复现1. 问题2. 通过 on_bad_lines=‘warn’ 跳过异常数据3

Android Paging 分页加载库使用实践

《AndroidPaging分页加载库使用实践》AndroidPaging库是Jetpack组件的一部分,它提供了一套完整的解决方案来处理大型数据集的分页加载,本文将深入探讨Paging库... 目录前言一、Paging 库概述二、Paging 3 核心组件1. PagingSource2. Pager3.

java中pdf模版填充表单踩坑实战记录(itextPdf、openPdf、pdfbox)

《java中pdf模版填充表单踩坑实战记录(itextPdf、openPdf、pdfbox)》:本文主要介绍java中pdf模版填充表单踩坑的相关资料,OpenPDF、iText、PDFBox是三... 目录准备Pdf模版方法1:itextpdf7填充表单(1)加入依赖(2)代码(3)遇到的问题方法2:pd

Python操作PDF文档的主流库使用指南

《Python操作PDF文档的主流库使用指南》PDF因其跨平台、格式固定的特性成为文档交换的标准,然而,由于其复杂的内部结构,程序化操作PDF一直是个挑战,本文主要为大家整理了Python操作PD... 目录一、 基础操作1.PyPDF2 (及其继任者 pypdf)2.PyMuPDF / fitz3.Fre