文档详情

09.Excel+Deepseek实现Excel合并拆分.docx

发布:2025-05-17约7.12千字共10页下载文档
文本预览下载声明

打工人的逆袭:用VBA彻底摆脱Excel噩梦!

你敢信?每天对着电脑复制粘贴Excel,手指头都快磨出茧子了,领导还嫌慢!我就想问,这年头不学点自动化操作,打工人真得这么累死累活吗?

话说我之前也是个Excel苦手,面对几十个表格合并或拆分的任务,简直要了我的老命。那时候,感觉自己就像个机器人,一天到晚重复着同样的动作——打开文件、复制数据、粘贴数据……眼睛都花了,错误还一大堆。同事们都在抱怨,但似乎大家都觉得这是“正常”的工作量。

直到有一天,我在网上无意间看到了VBA这个神器,当时心里就一个想法:“啥是VBA?”了解之后才发现,原来这就是我一直梦寐以求的解决方案啊!

一、批量合并Excel文件

举例:三个部门分别提交了三份结构相同的Excel文件,领导要求整合成一张表进行分析。

如果按照传统方法,估计得忙活大半天。但是有了VBA代码,只需要运行宏,然后手动选择需要合并的Excel路径,系统就能自动完成任务。虽然第一次使用时遇到了小问题,比如需要手动输入文件夹路径,但这对我来说就像是找到了宝藏的第一块拼图,激动不已。

1.整理数据表格

生成VBA指令

提示词:我想要把多个相同字段的excel表格合并在一个表格上,手动选择要合并的excel表格路径,请生成批量处理的VBA代码。

运行指令

excel菜单栏依次点击开发工具—VisualBasic—模块—将代码粘贴到右边空白编辑区域中—运行

4.运行结果

合并后的:

指令原版:

OptionExplicit

SubMergeExcelFiles()

DimfileDialogAsfileDialog

DimselectedFileAsVariant

DimtargetWorkbookAsWorkbook

DimsourceWorkbookAsWorkbook

DimtargetSheetAsWorksheet

DimsourceSheetAsWorksheet

DimlastRowAsLong

DimlastColumnAsLong

DimstartRowAsLong

DimfileCountAsLong

DimiAsLong

创建文件对话框

SetfileDialog=Application.fileDialog(msoFileDialogFilePicker)

配置文件对话框

WithfileDialog

.Title=选择要合并的Excel文件

.AllowMultiSelect=True

.Filters.Clear

.Filters.AddExcelFiles,*.xlsx;*.xls;*.xlsm,1

.Filters.AddAllFiles,*.*,2

显示文件对话框

If.Show=-1Then

fileCount=.SelectedItems.Count

检查是否选择了文件

IffileCount0Then

创建新的工作簿用于合并结果

SettargetWorkbook=Workbooks.Add

SettargetSheet=targetWorkbook.Sheets(1)

targetSheet.Name=合并结果

设置起始行

startRow=1

处理每个选中的文件

Fori=1TofileCount

获取文件路径

selectedFile=.SelectedItems(i)

打开源工作簿

SetsourceWorkbook=Workbooks.Open(selectedFile,ReadOnl

显示全部
相似文档