推荐使用power query合并多个excel文件,因其可自动识别同一文件夹下所有excel文件的指定工作表并纵向堆叠,支持动态刷新,适用于结构一致、列标题相同的批量整合。

如果您需要将多个独立的Excel文件整合为一个统一的工作表,则可能是由于手动复制粘贴效率低下、易出错或需定期更新数据。以下是解决此问题的步骤:
一、使用Power Query合并多个Excel文件
Power Query是Excel内置的数据连接与转换工具,可自动识别同一文件夹下所有Excel文件的指定工作表,并纵向堆叠合并,支持动态刷新,适用于结构一致、列标题相同的多文件批量整合。
1、打开Excel,点击【数据】选项卡,选择【获取数据】→【从文件】→【从文件夹】。
2、在弹出窗口中,浏览并选择存放所有待合并Excel文件的文件夹,点击【确定】。
3、在新出现的查询预览界面中,勾选【合并并加载】按钮旁的下拉箭头,选择【合并并加载到…】。
4、在【导入数据】对话框中,选择【仅创建连接】,点击【加载】。
5、右键刚生成的查询项,选择【编辑】,在Power Query编辑器中删除除【Content】列外的所有列。
6、点击【Content】列右上角的展开图标,勾选【使用第一行作为标题】,确认后关闭并上载。
二、通过VBA宏批量合并工作簿
VBA脚本可遍历指定路径下的所有.xlsx或.xls文件,读取每个文件的首个工作表(或指定名称工作表),逐个追加至当前工作簿的新工作表中,适用于需保留原始结构且不依赖版本功能的场景。
1、按Alt + F11打开VBA编辑器,点击【插入】→【模块】。
2、粘贴以下代码(注意修改Path = "C:\YourFolder\"为实际文件夹路径):
Sub MergeWorkbooks()
Dim Path As String, Filename As String, wb As Workbook
Path = "C:\YourFolder\"
Filename = Dir(Path & "*.xls*")
Do While Filename ""
Set wb = Workbooks.Open(Path & Filename)
wb.Sheets(1).UsedRange.Copy ThisWorkbook.Sheets(1).Cells(Rows.Count, 1).End(xlUp).Offset(1, 0)
wb.Close False
Filename = Dir
Loop
End Sub
3、按F5运行宏,等待执行完成。
4、检查当前工作簿Sheet1中是否已按顺序追加全部源文件首表数据。
三、借助第三方工具(如Kutools for Excel)一键合并
Kutools提供图形化界面操作,支持按工作表名称匹配合并、跳过空文件、添加来源标识等增强功能,适合不熟悉代码或Power Query的用户,无需编写公式或进入编辑器即可完成操作。
1、确保已安装Kutools for Excel插件,重启Excel后可见【Kutools】选项卡。
2、点击【Kutools】→【合并】→【合并工作簿】。
3、在弹出窗口中,点击【添加文件】选择所有待合并的Excel文件。
4、勾选【合并所有工作表】或指定工作表名称,设置是否添加“来源工作簿名称”列。
5、点击【确定】,程序自动生成汇总表并插入当前工作簿。








