从多个工作簿中合并同名工作表到一个工作表
在数据分析中,将多个 Excel 工作簿中的数据合并到一个工作表中是一个常见的需求,尤其是在处理来自不同来源的汇总报告或数据聚合时。当需要合并不同工作簿中具有相同名称的工作表时,这一任务可能会变得特别具有挑战性。本教程将向您介绍两种有效的方法来简化这一过程:使用 VBA 代码(适合喜欢动手编程的用户),以及利用 Kutools for Excel(为寻求更友好、自动化解决方案的用户提供便利)。
使用 VBA 代码将同名工作表合并到一个工作表
本节提供了一个用于将多个工作簿中同名工作表合并为一个工作表的 VBA 代码,请按照以下步骤操作:
- 按 "Alt" + "F11" 打开 VBA 编辑器。
- 在 VBA 编辑器中,点击 "插入" > "模块",然后在模块中输入以下 VBA 代码。 VBA 代码:将同名工作簿合并为一个工作簿
Sub CombineSameNameSheetsFromMultipleWorkbooks() 'Updated by Extendoffice 2025/3/27 Dim wsTarget As Worksheet Dim wbTarget As Workbook Dim wbSource As Workbook Dim wsSource As Worksheet Dim strSheetName As String Dim fd As FileDialog Dim FileChosen As Integer Dim FileName As String Dim lastRow As Long ' Set the name of the sheets to combine strSheetName = "SheetName" ' Change "SheetName" to the name of your sheet Set wbTarget = Workbooks.Add Set wsTarget = wbTarget.Sheets(1) wsTarget.Name = "Combined Data" Set fd = Application.FileDialog(msoFileDialogFilePicker) fd.AllowMultiSelect = True FileChosen = fd.Show If FileChosen = -1 Then For Each varFile In fd.SelectedItems Set wbSource = Workbooks.Open(varFile) On Error Resume Next Set wsSource = wbSource.Sheets(strSheetName) On Error GoTo 0 If Not wsSource Is Nothing Then lastRow = wsTarget.Cells(wsTarget.Rows.Count, 1).End(xlUp).Row wsSource.UsedRange.Copy Destination:=wsTarget.Cells(lastRow + 1, 1) Set wsSource = Nothing End If wbSource.Close False Next varFile End If MsgBox "Data has been combined successfully!", vbInformation End Sub
注意:在运行代码之前,您需要将 "strSheetName" 变量中的 "SheetName" 更改为要合并的实际工作表名称。 - 按 "F5" 键运行代码。将会弹出一个 "选择 Excel 文件" 窗口,请选择包含要合并的同名工作表的工作簿,然后点击 "打开" 按钮。
- 合并完成后,会弹出一个 "Microsoft Excel" 对话框,确认工作表已成功合并。点击 "确定" 关闭对话框。
现在,所选工作簿中所有同名工作表的内容都已合并到新工作簿中的一个工作表中。
使用 Kutools for Excel 轻松将同名工作表合并到一个工作表
虽然 VBA 在 Excel 中提供了强大的自动化功能,但对于没有编程技能的用户来说,它可能复杂且令人望而却步。此外,VBA 需要谨慎的安全措施,并可能带来兼容性问题。相比之下,Kutools for Excel 提供了一种更加用户友好和安全的替代方案,可以简化从多个工作簿中合并工作表的过程,无需复杂的编码,使所有 Excel 用户都能轻松完成该任务。
Kutools for Excel - 包含超过 300 个 Excel 必备工具。永久免费享受 AI 功能!立即下载!
安装 Kutools for Excel 后,选择 "Kutools Plus" > "Combine" 打开 "合并工作表" 向导。然后按照以下步骤进行配置。
- 在 "合并工作表 – 第 1 步,共 3 步" 向导中,选择 "将所有同名工作表合并为一个工作表" 选项,然后点击 "下一步"。
- 在 "第 2 步,共 3 步" 向导中,点击 "添加" 按钮以选择包含要合并的同名工作表的工作簿。 注意:如果工作簿保存在一个文件夹中,您可以点击 "添加" 按钮旁边的下拉箭头以展开子菜单,然后选择 "文件夹" 以快速添加该文件夹中的所有 Excel 文件。
- 添加工作簿后,根据您的需求有两种选择:
- 如果您想将所选工作簿中的所有工作表合并到一个工作簿中,只需点击 "下一步" 按钮即可。所有工作表都将被合并,同名工作表的内容将被合并到一个工作表中。
- 如果您只想合并同名的工作表,首先在 "工作表列表" 部分选择一个工作表,然后点击 "相同工作表" 按钮。这将自动选择所有添加的工作簿中同名的工作表。之后,点击 "下一步" 继续。
- 在向导的最后一步,保留默认选项或根据需要自定义设置,然后点击 "完成"。
- 为合并的工作簿选择目标文件夹,根据需要输入文件名,然后点击 "保存" 按钮以完成操作。
使用合适的工具,可以从多个工作簿中高效地合并同名工作表。无论您偏爱内置方法还是高级插件,这两种方法都提供了可靠的解决方案,以适应不同的技能水平。掌握这些技术将显著提高您的工作效率,并简化 Excel 中的数据整合流程。
Kutools for Excel - 通过超过300个必备工具,让Excel功能大幅提升。永久免费享受AI功能!立即获取
如果您想了解更多关于此功能的信息,请查看此页面:合并所有同名工作表到一个工作表教程。
相关文章:
最佳办公效率工具
🤖 | Kutools AI 助手:基于智能执行、生成代码、创建自定义公式、分析数据并生成图表、调用 Kutools 函数等功能,彻底改变数据分析方式… |
热门功能:查找、高亮或标记重复项 | 删除空行 | 合并不丢失数据的列或单元格 | 四舍五入 ... | |
高级 LOOKUP:多条件 VLookup | 多值 VLookup | 多表查找 | 模糊查找 .... | |
高级下拉列表:快速创建下拉列表 | 从属下拉列表 | 多选下拉列表 .... | |
列管理器: 添加指定数量的列 | 移动列 | 切换隐藏列的可见状态 | 比较区域和列 ... | |
精选功能:网格聚焦 | 设计视图 | 增强编辑栏 | 工作簿与工作表管理器 | 资源库(自动文本) | 日期提取 | 合并数据 | 加密/解密单元格 | 按列表发送电子邮件 | 超级筛选 | 特殊筛选(筛选粗体/斜体/删除线...)... | |
排名前 15 的工具集: 12 种文本 工具(添加文本、删除特定字符等) | 50 多 种图表 类型(甘特图等) | 40 多种实用 公式(基于生日计算年龄等) | 19 种插入 工具(插入二维码、根据路径插入图片等) | 12 种转换 工具(小写金额转大写、汇率转换等) | 7 种合并与分割 工具(高级合并行、分割单元格等) | 还有更多... |
使用 Kutools for Excel 提升您的 Excel 技能,体验前所未有的高效。 Kutools for Excel 提供超过 300 种高级功能来提高生产力并节省时间。 单击此处获取您最需要的功能...
Office Tab 将标签式界面引入 Office,让您的工作更加轻松
- 在 Word、Excel、PowerPoint 中启用标签式编辑和阅读。
- 在同一窗口的新标签页中打开和创建多个文档,而不是在新窗口中进行操作。
- 将您的生产力提升 50%,每天为您减少数百次鼠标点击!