VBS脚本搞定,快速批量提取一堆Excel文件中的数据
1.需求诞生
小王就职于一家国有大型企业,工作业务十分繁忙,在处理企业某业务数据时,需要从上千个Excel文件中提取某一单元格位置的数据,并整理到另一个Excel文件。要说是这样的Excel文件仅有几个或者十几个也还好,手动点开复制粘贴并不是难事。
但是面对一下子上千个的文件,要靠人工操作恐怕是非常不现实的,小王顿感到十分地为难。好在,他这时候想到了自己的好朋友“八两”。八两听完了小王的介绍,知道这样的需求肯定是可以软件实现的,于是对小王说,你把文件发给我吧,我下班回家后写代码帮你提取数据。可是小王却说,这些文件涉及到企业核心经营数据,实在不方便提供。于是问题暂时陷入了僵局。
2.实现思路
小王不懂代码,更不会编写软件,无法提供Excel文件肯定是不方便调试的,所以凭空写一个应用程序发给小王,万一遇到软件有Bug的地方也不便于调试。好在还有一种编程语言叫做脚本语言,比如说VBS,VBS的脚本程序扩展名即为.vbs,使用记事本文件可以直接编写,保存后还可以双击直接在Windows系统上运行,遇到异常的话,远程指导小王修改其中的脚本代码也相对容易。于是八两决定使用记事本来完成这样一件任务。
3.核心代码
废话不多说,直接贴出全部脚本代码。
' 定义文件夹路径
Dim folderPath
folderPath = "D:\YourFolderPath\"
' 定义目标 Excel 文件路径
Dim targetExcelPath
targetExcelPath = "D:\YourTargetExcel.xlsx"
' 打开文件夹
Set folder = CreateObject("Scripting.FileSystemObject").GetFolder(folderPath)
Set objExcel = CreateObject("Excel.Application")
objExcel.Visible = True ' 设置Excel可见
Set targetWorkbook = objExcel.Workbooks.Open(targetExcelPath)
Set targetWorksheet = targetWorkbook.Worksheets(1)
' 遍历文件夹中的 Excel 文件
dim row,col
' row,col是定义写入位置的初始位置,行和列号
row=1
col=1
For Each file In folder.FilesIf LCase(Right(file.Name, 4)) = ".xls" Or LCase(Right(file.Name, 5)) = ".xlsx" Then' 打开 Excel 文件Set workbook = objExcel.Workbooks.Open(file.Path)' 选择要提取数据的工作表Set worksheet = workbook.Worksheets(1)' 提取相同位置的数据Dim dataToExtract' 这句的1,1是指读取文件中要读取数据的 位置是第1行第1列。dataToExtract = worksheet.Cells(1, 1).Value' 将数据写入目标表格targetWorksheet.Cells(row, col) = dataToExtractrow=row+1' 关闭打开的 Excel 文件workbook.CloseEnd If
Next
' 显示完成消息
MsgBox "数据提取完成!"
注意,这里的代码用记事本保存时,编码一定要选择为ANSI,如果保存为UTF-8或者其他编码格式,运行是会报错的。保存时,保存类型选择为“所有文件(*.*)”,文件名为“提取数据.vbs”即可。
4.完整文件
普通脚本文件而已,大家复制保存后,修改运行即可,就不上传单独的文件了。
相关文章:
VBS脚本搞定,快速批量提取一堆Excel文件中的数据
1.需求诞生 小王就职于一家国有大型企业,工作业务十分繁忙,在处理企业某业务数据时,需要从上千个Excel文件中提取某一单元格位置的数据,并整理到另一个Excel文件。要说是这样的Excel文件仅有几个或者十几个也还好,手动…...
大数据分析案例-基于SVM支持向量机算法构建手机价格分类预测模型
🤵♂️ 个人主页:艾派森的个人主页 ✍🏻作者简介:Python学习者 🐋 希望大家多多支持,我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞Ǵ…...
WPF 滑动条样式
效果图: 浅色: 深色: 滑动条部分代码: <Style x:Key"RepeatButtonTransparent" TargetType"{x:Type RepeatButton}"><Setter Property"OverridesDefaultStyle" Value"true"/&g…...
论文设计任务书学习文档|基于Web的个性化简历职位推荐系统的设计与实现
文章目录 论文(设计)题目:基于Web的个性化简历职位推荐系统的设计与实现1、论文(设计)的主要任务及目标2、论文(设计)的主要内容3、论文(设计)的基本要求4、进度安排论文(设计)题目:基于Web的个性化简历职位推荐系统的设计与实现 1、论文(设计)的主要任务及目标…...
Win11系统安装安卓子系统教程
随着Win11系统的不断普及,以及硬件设备的更新换代,我相信很多同学都已经更新并使用到了最新的Win11系统。那么,Win11系统最受期待的功能“Windows Subsystem for Android”(简称WSA),即《安卓子系统》。他可…...
Python实现双向链表:从基础到应用
一、引言 双向链表是一种比单向链表更复杂的数据结构,每个节点除了包含数据和指向下一个节点的指针外,还包含一个指向前一个节点的指针。这种结构使得我们可以从链表的任何节点开始,向前或向后遍历链表。 目录 一、引言 二、节点定义 三、…...
c# 读取DataGridView中的数据
/// <summary> /// 读取DataGridView中的数据 /// </summary> /// <param name"dgv">DataGridView对象</param> /// <returns>DataTable对象</returns> private DataTable GetDgvToTab…...
Stable Diffusion中的Clip模型
基础介绍 Stable Diffusion 是一个文本到图像的生成模型,它能够根据用户输入的文本提示(prompt)生成相应的图像。在这个模型中,CLIP(Contrastive Language-Image Pre-training)模型扮演了一个关键的角色&a…...
Python批量提取文件夹中图片的名称及路径到指定的.txt文件中
目录 一、代码二、提取效果 一、代码 import os# 定义要保存的文件名 file_name "TestImage/Image_Visible_Gray.txt"# 读取文件夹路径 folder_path "TestImage/Image_Visible_Gray"# 遍历文件夹中的所有文件 with open(file_name, "w") as f…...
微软开源 SBOM 生成工具:sbom-tool下载及使用详解
github地址 GitHub - microsoft/sbom-tool: The SBOM tool is a highly scalable and enterprise ready tool to create SPDX 2.2 compatible SBOMs for any variety of artifacts.The SBOM tool is a highly scalable and enterprise ready tool to create SPDX 2.2 compatib…...
【办公类-18-03】(Python)中班米罗可儿证书批量生成打印(班级、姓名)
作品展示——米罗可儿证书打印幼儿姓名 背景需求 2024年3月1日,中4班孩子一起整理美术操作材料《米罗可儿》的操作本——将每一页纸撕下来,分类摆放、确保纸张上下位置正确。每位孩子们都非常厉害,不仅完成了自己的一本,还将没有…...
js【详解】数据类型原理(含变量赋值详解-浅拷贝)
JavaScript 中的数据按存储方式的不同,分为值类型和引用类型。 值类型(共 6 种):赋值的时候传值 —— 数字、字符串、布尔值、null 、undefined,Symbol引用类型(仅 1 种):赋值的时候…...
SAM 影像分割——地理空间数据的分段模型的数据调参和自动分割分析
本笔记本展示了如何使用 Segment Anything Model (SAM) 从图像中分割对象,只需几行代码即可完成。 请确保在本笔记本中使用 GPU 运行时。对于 Google Colab,请转到运行时 -> 更改运行时类型,然后选择 GPU 作为硬件加速器。 地理空间数据的分段模型 Segment Anything M…...
Java底层自学大纲_设计模式篇
设计模式专题_自学大纲所属类别学习主题建议课时(h) A 深入理解设计模式001 SOLID设计原则和策略模式2.5 A 深入理解设计模式002 责任链模式2.5 A 深入理解设计模式003 工厂模式和模版方法模式2.5 A 深入理解设计模式004 装饰者模式2.5 A 深入理解设…...
详解字符串函数<string.h>(上)
1. strlen函数的使用和模拟实现 size_t strlen(const char* str); 1.1 函数功能以及用法 字符串长度 strlen函数的功能是计算字符串的长度。在使用时,要求用户传入需要计算长度的字符串的起始位置,并返回字符串的长度。 #include <stdio.h> #…...
1、docker入门
文章目录 1、tocker简介2、tocker的安装&环境配置2、配置阿里云镜像3、基本命令1、镜像命令2、docker基本命令3、镜像基本命令4、Docker 容器常用命令 1、tocker简介 新一代的虚拟化技术 2、tocker的安装&环境配置 uname -r1、首先查看liunx的内核 yum update -y2、更…...
Qt应用软件【测试篇】cppchecker静态代码检查
文章目录 cppcheker简介下载地址与安装检查项目QT Creator使用CPP Cheker开启检查常见错误总结错误信息说明cppcheker简介 Cppcheck 是一个用于 C/C++ 代码的分析工具。它提供独特的代码分析以检测错误,并专注于检测未定义的行为和危险的编码结构。其目标是仅检测代码中的真实…...
[递推与递归]数的计算
题目描述 给出正整数 n,要求按如下方式构造数列: 只有一个数字 n 的数列是一个合法的数列。在一个合法的数列的末尾加入一个正整数,但是这个正整数不能超过该数列最后一项的一半,可以得到一个新的合法数列。 请你求出ÿ…...
Cocos Creator 3.8.x 后效处理(前向渲染)
关于怎么开启后效效果我这里不再赘述,可以前往Cocos官方文档查看具体细节:后效处理官网 下面讲一下怎么自己定义一个后处理效果,想添加自己的后效处理的话只需要在postProcess节点下添加一个BlitScreen 组件即可,然后自己去添加自…...
【前端素材】推荐优质后台管理系统 Adminity平台模板(附源码)
一、需求分析 1、系统定义 后台管理系统是一种用于管理网站、应用程序或系统的管理界面,通常由管理员和工作人员使用。它提供了访问和控制网站或应用程序后台功能的工具和界面,使其能够管理用户、内容、数据和其他各种功能。 2、功能需求 后台管理系…...
Python爬虫实战:研究MechanicalSoup库相关技术
一、MechanicalSoup 库概述 1.1 库简介 MechanicalSoup 是一个 Python 库,专为自动化交互网站而设计。它结合了 requests 的 HTTP 请求能力和 BeautifulSoup 的 HTML 解析能力,提供了直观的 API,让我们可以像人类用户一样浏览网页、填写表单和提交请求。 1.2 主要功能特点…...
Java如何权衡是使用无序的数组还是有序的数组
在 Java 中,选择有序数组还是无序数组取决于具体场景的性能需求与操作特点。以下是关键权衡因素及决策指南: ⚖️ 核心权衡维度 维度有序数组无序数组查询性能二分查找 O(log n) ✅线性扫描 O(n) ❌插入/删除需移位维护顺序 O(n) ❌直接操作尾部 O(1) ✅内存开销与无序数组相…...
在rocky linux 9.5上在线安装 docker
前面是指南,后面是日志 sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo dnf install docker-ce docker-ce-cli containerd.io -y docker version sudo systemctl start docker sudo systemctl status docker …...
LeetCode - 394. 字符串解码
题目 394. 字符串解码 - 力扣(LeetCode) 思路 使用两个栈:一个存储重复次数,一个存储字符串 遍历输入字符串: 数字处理:遇到数字时,累积计算重复次数左括号处理:保存当前状态&a…...
【AI学习】三、AI算法中的向量
在人工智能(AI)算法中,向量(Vector)是一种将现实世界中的数据(如图像、文本、音频等)转化为计算机可处理的数值型特征表示的工具。它是连接人类认知(如语义、视觉特征)与…...
Spring Boot面试题精选汇总
🤟致敬读者 🟩感谢阅读🟦笑口常开🟪生日快乐⬛早点睡觉 📘博主相关 🟧博主信息🟨博客首页🟫专栏推荐🟥活动信息 文章目录 Spring Boot面试题精选汇总⚙️ **一、核心概…...
涂鸦T5AI手搓语音、emoji、otto机器人从入门到实战
“🤖手搓TuyaAI语音指令 😍秒变表情包大师,让萌系Otto机器人🔥玩出智能新花样!开整!” 🤖 Otto机器人 → 直接点明主体 手搓TuyaAI语音 → 强调 自主编程/自定义 语音控制(TuyaAI…...
vue3+vite项目中使用.env文件环境变量方法
vue3vite项目中使用.env文件环境变量方法 .env文件作用命名规则常用的配置项示例使用方法注意事项在vite.config.js文件中读取环境变量方法 .env文件作用 .env 文件用于定义环境变量,这些变量可以在项目中通过 import.meta.env 进行访问。Vite 会自动加载这些环境变…...
python执行测试用例,allure报乱码且未成功生成报告
allure执行测试用例时显示乱码:‘allure’ �����ڲ����ⲿ���Ҳ���ǿ�&am…...
算法:模拟
1.替换所有的问号 1576. 替换所有的问号 - 力扣(LeetCode) 遍历字符串:通过外层循环逐一检查每个字符。遇到 ? 时处理: 内层循环遍历小写字母(a 到 z)。对每个字母检查是否满足: 与…...
