Sub BatchMergeExcelFiles()
Dim sourceFolder As String
Dim newWorkbook As Workbook
Dim sourceWorkbook As Workbook
Dim fileDialog As fileDialog
Dim targetRow1 As Long ' new.xlsx Sheet1的目标粘贴行
Dim targetRow2 As Long ' new.xlsx Sheet2的目标粘贴行
' 1. 选择目标文件夹(手动选择,避免硬编码路径)
Set fileDialog = Application.fileDialog(msoFileDialogFolderPicker)
With fileDialog
.Title = "请选择要遍历的文件夹"
If .Show <> -1 Then Exit Sub
sourceFolder = .SelectedItems(1) & "\"
End If
' 2. 创建新工作簿 new.xlsx
Set newWorkbook = Workbooks.Add
newWorkbook.SaveAs Filename:=sourceFolder & "new.xlsx", FileFormat:=xlOpenXMLWorkbook
' 初始化目标粘贴行(从第1行开始)
targetRow1 = 1
targetRow2 = 1
' 3. 遍历文件夹内所有xlsx文件
Dim fileName As String
fileName = Dir(sourceFolder & "*.xlsx")
Application.ScreenUpdating = False ' 关闭屏幕更新,提升效率
Application.DisplayAlerts = False ' 关闭弹窗提示
Do While fileName <> ""
' 跳过新建的new.xlsx,避免自循环
If fileName <> "new.xlsx" Then
' 打开源文件
Set sourceWorkbook = Workbooks.Open(sourceFolder & fileName)
' ========== 复制 Sheet1!B7:G8 到 new.xlsx Sheet1 ==========
With sourceWorkbook.Worksheets("Sheet1")
.Range("B7:G8").Copy
newWorkbook.Worksheets(1).Range("A" & targetRow1).PasteSpecial Paste:=xlPasteValuesAndNumberFormats
End With
targetRow1 = targetRow1 + 2 ' 每次复制2行,目标行递增2
' ========== 复制 Sheet1!B51:G58 到 new.xlsx Sheet2 ==========
With sourceWorkbook.Worksheets("Sheet1")
.Range("B51:G58").Copy
newWorkbook.Worksheets(2).Range("A" & targetRow2).PasteSpecial Paste:=xlPasteValuesAndNumberFormats
End With
targetRow2 = targetRow2 + 8 ' 每次复制8行,目标行递增8
' 关闭源文件,不保存修改
sourceWorkbook.Close SaveChanges:=False
End If
' 读取下一个文件
fileName = Dir
Loop
' 收尾操作
Application.CutCopyMode = False
Application.ScreenUpdating = True
Application.DisplayAlerts = True
newWorkbook.Save ' 保存new.xlsx
newWorkbook.Close
MsgBox "批量合并完成!" & vbCrLf & "新文件路径:" & sourceFolder & "new.xlsx", vbInformation
' 释放对象
Set sourceWorkbook = Nothing
Set newWorkbook = Nothing
Set fileDialog = Nothing
End Sub
vb copy target range
张小明
前端开发工程师
如何通过AI销冠系统,实现数字员工效率的质变?
数字员工通过AI销冠系统正在重新定义企业的运营模式。它不仅能够迅速处理大量客户沟通,还能显著降低人力成本。利用智能技术,数字员工可以全天候无缝服务,提升客户体验。例如,在进行客户满意度回访时,AI销冠系统能够对…
兼容性双突破,低门槛部署实测!IPTV 电视源码系统 2025
分享 2025 优化版源码的核心升级,技术点接地气,新手也能轻松 get~ 经过实测验证,这套源码在流畅度、兼容性、运维效率上实现三重飞跃! 核心架构全面升级是关键:采用 IMS 核心网融合方案 两级 CDN 调度&am…
plsql提示款报错乱码
问题现象:提示框报错,显示乱码了 解决方案: plsql 出现这种�乱码 百度了半天都是改环境变量什么的巴拉巴拉,改了半天发现并没有实际作用,偶然间发现其实是win10系统导致的,改一下 控制面板—&…
为什么Laravel 13的多模态存储设计让90%的开发者拍案叫绝?
第一章:Laravel 13 多模态存储的设计哲学Laravel 13 在数据持久化层面引入了多模态存储架构,标志着框架从单一数据库依赖向灵活、分层的数据管理演进。这一设计哲学强调根据数据类型、访问频率与一致性要求,动态选择最合适的存储机制…
【计算机毕设选题】基于Spark的公务员招录职位信息可视化分析系统源码,Python大数据项目 毕业设计 选题推荐 毕设选题 数据分析 机器学习
✍✍计算机毕设指导师** ⭐⭐个人介绍:自己非常喜欢研究技术问题!专业做Java、Python、小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目:有源码或者技术上的问题欢迎在评论区一起讨论交流! ⚡⚡有什么问题可以…
如何利用微信个人号API接口进行二次开发?
微信作为国民级应用,不仅是社交的中心,更是企业连接客户、进行私域运营的核心阵地。然而,微信生态的封闭性往往让开发者望而却步。现在,GeWe 开放平台来了! 它将成为你连接微信世界的桥梁,提供强大而便捷的…