Excel 怎么合并多个工作表
12 个月的销售明细分在 12 张表里,或者每家分店一个工作簿——要汇总成一张表时,大多数人的第一反应是复制粘贴。本文先讲清 Excel 内置的两种正规做法(复制粘贴、Power Query 追加),再说说它们的局限,最后介绍一种真正省力的方案。
合并多个工作表本质上是一件「纵向堆叠」的事:把 A 表的行接在 B 表下面,再接 C 表……前提是各表的列结构要相同(列名、顺序一致),否则就会错位。Excel 原生没有专门的「合并工作表」按钮,能用的主要是两个办法。
办法一:复制粘贴(少量表、一次性需求适用)
最直白的做法:新建一个「汇总」工作表,依次打开每张表,全选数据区域(Ctrl+Shift+End 快速选到最后一行),复制,粘贴到汇总表的末尾。
注意第一张表把表头一起复制,后续每张表只复制数据行,跳过表头,否则汇总表里会混进多行表头,后续筛选排序都会出问题。
如果各表放在同一个工作簿里,也可以借助 VBA 宏批量处理:
- 按
Alt+F11打开 VBA 编辑器,插入新模块。 - 写一个循环,遍历
ThisWorkbook.Sheets,跳过汇总表自身,逐表把UsedRange的数据行追加到汇总表。 - 运行宏即可。但宏要处理好「第一行是否是表头」的判断,否则会把每张表的表头都并进来。
办法二:Power Query 追加查询 / 从文件夹合并
Power Query(Excel 2016 及以上内置,旧版需装插件)是微软推荐的「无代码 ETL」工具,合并多张结构相同的表是它的典型场景。
同一工作簿内多个 Sheet 合并:
- 「数据」→「获取数据」→「来自工作簿」,选中当前文件,导入所有需要的工作表。
- 在 Power Query 编辑器里,逐一将各表加载为查询。
- 选中第一个查询,「主页」→「追加查询」→「将查询追加为新查询」,把其余表依次追加进来。
- 关闭并加载,汇总结果就落到一张新 Sheet 里。之后只要点「全部刷新」,Power Query 会重跑查询自动更新。
多个工作簿(多个 .xlsx 文件)合并:
- 把所有要合并的文件放进同一个文件夹。
- 「数据」→「获取数据」→「来自文件」→「从文件夹」,指向那个文件夹。
- Power Query 会列出文件夹里所有文件;点「合并并转换数据」,选择要读取的 Sheet 名称,它会自动把每个文件的同名 Sheet 拼在一起。
- 加载后,文件夹里新增文件只需「刷新」就能自动并进来。
Power Query 还能在合并前做列重命名、筛选空行、统一数据类型等清洗操作,功能确实强大。
这些办法的麻烦
两种方案都能解决问题,但日常使用中各有让人头疼的地方:
- 复制粘贴:纯手工、容易漏、不能自动更新;表一多就崩溃。
- Power Query 学习成本高:第一次配置要摸索半小时以上——导入路径、查询合并、刷新设置……每个环节都有坑。列顺序不同时还要手动对齐,稍不注意就错列。
- 文件路径绑死:从文件夹合并的查询会记住绝对路径,换电脑或移动文件夹就得重新配数据源。
- 刷新不够实时:Power Query 是「刷新时拉取」,不是持续联动。你改了源表的一行数据,汇总表不会立刻变,得手动点「刷新」。
- Excel 版本依赖:Power Query 在 WPS、低版本 Excel、国产 Office 套件里支持参差不齐,遇到兼容问题又是一番折腾。
更简单:超级表导入多表,一键堆叠合并
超级表(TableDI)是一款桌面端高能表格助手,macOS 和 Windows 都能用,完全离线、无需登录。它把「把多张结构相同的表纵向合并」做成了一个步骤,不需要配查询、不需要记路径。
- 导入所有表:把要合并的 Excel 文件或 CSV 文件直接拖进超级表,或通过「导入数据源」批量选择。每个文件/每个 Sheet 会成为一个独立数据表。
- 选中要合并的表:在左侧数据源面板多选需要合并的数据表(可以同时选多个)。
- 一键堆叠合并:点「合表」→「按结构纵向堆叠」,超级表自动按列名对齐各表的字段,相同列名的数据拼在一起,缺少的列留空,完全不用手动对齐。
- 新增文件自动并入:之后再往数据源里添加新文件,只需在合并视图里点「刷新」,新数据就自动追加进来,不用重新配置。
合并完的汇总表可以直接在超级表里做分组汇总、筛选、排序,也可以导出成新 Excel 文件。想做更复杂的跨表引用?可以看跨表引用自动更新的做法,或者用多表联动让各表之间保持持续关联。
合并后的数据想按条件汇总求和,比如统计各月各分类的销售额,可以参考条件求和的几种写法——超级表的分组汇总面板可以代替大量 SUMIF 公式。
三种方案对比
| 对比项 | 复制粘贴 | Power Query 追加 | 超级表合表 |
|---|---|---|---|
| 操作门槛 | 无门槛 | 需要学 PQ 界面 | 拖入 + 点选 |
| 适合表的数量 | 三四张以内 | 任意 | 任意 |
| 列顺序不同 | 手动对齐 | 手动在 PQ 里对齐 | 按列名自动对齐 |
| 源表更新后 | 要重做 | 点「全部刷新」 | 点刷新自动并入 |
| 新增文件 | 要重做 | 放同一文件夹后刷新 | 添加数据源后刷新 |
| 合并后可继续分析 | 在 Excel 里手动 | 在 Excel 里手动 | 直接分组汇总、看板 |
| 跨平台 | 任意 Excel | 需要 2016 及以上版本 | macOS + Windows 均支持 |
常见问题
各表列顺序不一样,还能合并吗?
能。超级表按列名而不是列位置来对齐,只要各表的列名拼写一致(比如都是「姓名」而不是一个「姓名」一个「Name」),就能正确合并,不需要提前调整列顺序。Power Query 也能做到,但要在编辑器里手动执行「展开」并对齐列,操作步骤更多。
合并后怎么知道每行来自哪张表?
超级表在堆叠合并时可以选择自动添加一列「来源标记」,记录每行数据来自哪个文件或哪个 Sheet。这样后续按「来源」筛选、分组汇总(比如分月汇总、分分店汇总)就非常方便。Power Query 的「从文件夹」合并也会自动生成 Source.Name 列,但默认保留完整文件路径,需要自己再清洗。
合并完之后能做分组汇总吗?
超级表里合并后的汇总表可以直接在面板里做分组汇总——按月份、分类、负责人等字段分组,对销售额、数量等字段求和/计数/平均,结果实时呈现,不需要另写 SUMIF 或透视表。详细用法可以参考条件求和相关章节。