VBA+FreePic2Pdf 找出没有放入PDF组合的单个PDF工艺文件

设计部门针对某个项目做了一个工艺汇总报告,原先只要几十个工艺文件,组合成一个PDF,但后来要求要多放点PDF进去,但工艺文件都混在一起又不知道哪些是重复的,找上我让我帮忙处理一下,我开始建议让她重新再组合一PDF就行了,但她说前面有一些说明资料不在她手上,她只能将原来的组合文件和新加入的工艺文件再组合。

1、首先考虑怎么将PDF中存在的工艺书签复制出来
PDF中的书签目录是这样的
在这里插入图片描述
而所有的工艺PDF文件有不少,如果一个一个去对,还是要花不少时间的
在这里插入图片描述

这里找到一个工具FreePic2Pdf,按照这个使用方法提取出了PDF中已经有的工艺目录在这里插入图片描述

将其复制到EXCEL中去。

二、然后考虑怎么将文件夹中所有的PDF文件,与已经有的记录进行比对。
利用VBA的DIR函数获取文件名

Sub abc()Dim filepath As String, filename As String
Dim ljdm As Variantfilepath = ThisWorkbook.Path & "\22-1113PDF\"
filename = Dir(filepath & "*.pdf")
Do While filename <> "" '判断文件名不为空时
For i = 1 To 700'这里只要比PDF文件个数多就行ljdm = filename '获取文件名中的零件代码
ActiveSheet.Cells(i, 2) = ljdm
filename = Dir()  
Next
LoopEnd Sub

然后两列数据进行排序、查重,就搞定了。
![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/312f24ecdafa488ea0a135a7de33ab36.png在这里插入图片描述

最后在文件夹中排序,排好序后就和表格中的一样顺序了,将“有”的PDF文件删除,剩下的就是原来PDF组合中没有的文件了。

其实还可以用python获取已有的记录,还可以用VBA进行一一比对,在表格中就挑出没有记录,不过只要利用手头上的工具干好事情也是一样的。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Webservice如何调用

webservice调用方式&#xff1a; &#xff08;1&#xff09;http方式调用 请求头增加Content-type:text/xml 或application/soapxml SOAPAction:方法名 请求body以xml字符串传递&#xff0c;xml格式定义 返回以xml字符串返回&#xff0c;xml某个字段是一个json字符串。 入…

2025-03-10 吴恩达机器学习1——机器学习概述

文章目录 1 监督学习1.1 回归1.2 分类 2 无监督学习2.1 聚类2.2 异常检测2.3 降维 3 使用 Jupyter Notebook ​ 1959 年&#xff0c;Arthur Samuel 将机器学习定义如下&#xff1a; ​ Field of study that gives computers the ability to learn without being explicitly pro…

Python 进程与线程-分布式进程

目录 分布式进程 小结 分布式进程 在Thread和Process中&#xff0c;应当优选Process&#xff0c;因为Process更稳定&#xff0c;而且&#xff0c;Process可以分布到多台机器上&#xff0c;而Thread最多只能分布到同一台机器的多个CPU上。 Python的multiprocessing模块不但支…

使用 Excel 实现绩效看板的自动化

引言 在日常工作中&#xff0c;团队的绩效监控和管理是确保项目顺利进行的重要环节。然而&#xff0c;面临着以下问题&#xff1a; ​数据分散&#xff1a;系统中的数据难以汇总&#xff0c;缺乏一个宏观的团队执行情况视图。​看板缺失&#xff1a;系统本身可能无法提供合适…

Unity中WolrdSpace下的UI展示在上层

一、问题描述 Unity 中 Canvas使用World Space布局的UI&#xff0c;想让它不被3d物体遮挡&#xff0c;始终显示在上层。 二、解决方案 使用shader解决 在 UI 的材质中禁用深度测试&#xff08;ZTest&#xff09;&#xff0c;强制 UI 始终渲染在最上层。 Shader "Custo…

uni-app学习笔记——自定义模板

一、流程 1.这是一个硬性的流程&#xff0c;只要按照如此程序化就可以实现 二、步骤 1.第一步 2.第二步 3.第三步 4.每一次新建页面&#xff0c;都如第二步一样&#xff1b;可以选择自定义的模版&#xff08;vue3Setup——这是我自己的模版&#xff09;&#xff0c;第二步的…

网络安全防护总体架构 网络安全防护工作机制

1 实践内容 1.1 安全防范 为了保障"信息安全金三角"的CIA属性、即机密性、完整性、可用性&#xff0c;信息安全领域提出了一系列安全模型。其中动态可适应网络安全模型基于闭环控制理论&#xff0c;典型的有PDR和P^2DR模型。 1.1.1 PDR模型 信息系统的防御机制能…

tomato靶场通关攻略

1.打开tomato靶机和kali虚拟机 2.运用kali扫描靶机ip 3.浏览器访问靶机ip 4.kali dirb扫描敏感文件 5.依次查看这几个文件&#xff0c;发现antibot_image下有文件info.php&#xff0c;发现一个被注释的get型文件包含漏洞&#xff0c;参数为image 6.查看日志文件 http://192.…

玩转云服务器——阿里云操作系统控制台体验测评

在云服务器日益普及的背景下&#xff0c;运维人员对操作系统管理工具的要求不断提高。我们需要一款既能直观展示系统状态&#xff0c;又能智能诊断问题&#xff0c;提供专业指导的控制台。阿里云操作系统管理平台正是基于API、SDK、CLI等多种管理方式&#xff0c;致力于提升操作…

Spring boot3-WebClient远程调用非阻塞、响应式HTTP客户端

来吧&#xff0c;会用就行具体理论不讨论 1、首先pom.xml引入webflux依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-webflux</artifactId> </dependency> 别问为什么因为是响应式....…

Qt/C++音视频开发82-系统音量值获取和设置/音量大小/静音

一、前言 在音视频开发中&#xff0c;音量的控制分两块&#xff0c;一个是控制播放器本身的音量&#xff0c;绝大部分场景都是需要控制这个&#xff0c;这个不会影响系统音量的设置。还有一种场景是需要控制系统的音量&#xff0c;因为播放器本身的音量是在系统音量的基础上控…

十三、OSG学习笔记-osgDB文件读写

上一章节&#xff1a; 十二、OSG学习笔记-Control-CSDN博客https://blog.csdn.net/weixin_36323170/article/details/146082287?spm1001.2014.3001.5501 一、文件读取原理 ReadNodeFile,读取流程&#xff1a; 二、实现一个简单的读取器 仿造ReaderWriterOSG.CPP原码&#x…

05.基于 TCP 的远程计算器:从协议设计到高并发实现

&#x1f4d6; 目录 &#x1f4cc; 前言&#x1f50d; 需求分析 &#x1f914; 我们需要解决哪些问题&#xff1f; &#x1f3af; 方案设计 &#x1f4a1; 服务器架构 &#x1f680; 什么是协议&#xff1f;为什么要设计协议&#xff1f; &#x1f4cc; 结构化数据的传输问题 …

设计模式学习笔记——命令模式

2025年3月13日&#xff0c;周四下午 相同的保存逻辑在各个组件中重复出现。 且需要修改保存逻辑时&#xff0c;各个组件的保存逻辑都需要进行相应修改。 使用了命令模式把保存逻辑从三个组件中独立出来后&#xff0c;减少了代码冗余。 可以通过“保存命令”来使用保存逻辑&am…

CNN-BiLSTM、BiLSTM、CNN多变量时间序列光伏功率预测Matlab

CNN-BiLSTM、BiLSTM、CNN多变量时间序列光伏功率预测Matlab 目录 CNN-BiLSTM、BiLSTM、CNN多变量时间序列光伏功率预测Matlab预测效果基本介绍程序设计参考资料 预测效果 基本介绍 CNN-BiLSTM、BiLSTM、CNN三模型多变量时序光伏功率预测 (Matlab2020b 多输入单输出) 1.程序已…

机器学习算法——聚类任务

目录 1、K-Means 2、K-medoids 3、K-medians 4、层次聚类 5、DBSCAN 6、OPTICS 7、谱聚类 Spectral Clustering 8、高斯混合模型 GMM 9、模糊C-means FCM 10、Mean Shift 11、BIRCH 12、Affinity Propagation 13、对比总结 14、完整代码 1、K-Means 目标:将数据点分组到K个簇中…

【亲测有用】数据集成平台能力演示(支持国产数据库DaMeng与KingBase)

&#x1f525;&#x1f525; AllData大数据产品是可定义数据中台&#xff0c;以数据平台为底座&#xff0c;以数据中台为桥梁&#xff0c;以机器学习平台为中层框架&#xff0c;以大模型应用为上游产品&#xff0c;提供全链路数字化解决方案。 ✨杭州奥零数据科技官网&#xf…

初阶数据结构(C语言实现)——5.2 二叉树的顺序结构及堆的实现

1.二叉树的顺序结构及实现 1.1 二叉树的顺序结构 普通的二叉树是不适合用数组来存储的&#xff0c;因为可能会存在大量的空间浪费。而完全二叉树更适合使用顺序结构存储。现实中我们通常把堆(一种二叉树)使用顺序结构的数组来存储&#xff0c;需要注意的是这里的堆和操作系统…

搭建阿里云专有网络VPC

目录 一、概述 二、专有网络vpc 2.1 vpc基本信息 2.2 vpc资源管理 2.3 vpc网段管理 三、交换机 四、NAT网关 4.1 绑定弹性公网IP 4.2 NAT网关信息 4.3 绑定的弹性公网IP 4.4 DNAT 4.5 SNAT 五、弹性公网IP 六、访问控制ACL&#xff08;绑定交换机&#xff09; 6…

Android `%d` 与 `1$%d` 格式化的区别

在 Android 开发中&#xff0c;我们经常需要对字符串进行格式化处理&#xff0c;比如动态填充数字、日期、字符等。 其中&#xff0c;%d 和 1$%d 都是格式化占位符&#xff0c;但它们在使用上有一些不同。 本文将详细解析这两者的区别&#xff0c;并结合 Kotlin 代码示例帮助你…