先给结论:三种做法
- ① Power Query 从文件夹合并(文件多、要反复合并):把所有待合并文件放进同一个空文件夹 → 数据 → 获取数据 → 从文件 → 从文件夹 → 选该文件夹 → 点"合并并加载"(或"转换数据"先清洗)。所有文件的行自动追加成一张表,以后往文件夹里丢新文件,只需右键刷新。
- ② 移动或复制工作表(两三个文件、一次性):打开目标文件 → 右键工作表标签 → "移动或复制" → "工作簿"下拉选源文件 → 勾选建立副本 → 确定,源文件的表就整张搬过来了。最直观,无需学新功能。
- ③ 数据 - 合并计算(只要汇总数、不要明细):数据 → 合并计算 → 选函数(求和/计数)→ 逐个添加各文件的区域 → 确定。按标签位置汇总,适合各表结构一致、只求合计的场景。
简单记忆:长期批量合并用 Power Query,偶尔搬两张表用移动复制,只求汇总用合并计算。
关于入口的说明:Power Query 在 Excel 2016 及以后叫"数据 - 获取和转换"(2010/2013 需装插件),WPS 中对应"数据 - 导入数据/合并"一类入口,名称与位置差异较大。"移动或复制"在右键工作表标签的菜单里。具体菜单位置以你软件的实际界面为准。本文讲清逻辑,面板随版本微调即可。
什么是多文件合并
"合并"在 Excel 里有三种不同含义,先分清你要哪种,否则会选错方法:
- 追加(纵向拼接):把多个文件的行堆在一起,列不变、行数变多。如 12 个月的明细表合成 1 张全年表。这是最常见的需求,Power Query 做的就是这件事。
- 横向合并:按某个关键列(如客户编号)把不同文件的列并排拼起来,行数不变、列变多。这需要 VLOOKUP 或 Power Query 的"合并查询"。
- 汇总:不算明细,只按标签位置把数字加总。这就是"合并计算"。
关键前提:追加合并要求各文件的列结构一致——同样的列、同样的顺序、同样的表头位置。结构不一致是合并失败的首要原因(见坑 1)。
做法步骤表
| 方法 | 怎么做 | 要点 / 适用场景 |
|---|---|---|
| Power Query | 文件放进同一空文件夹 → 数据 → 获取数据 → 从文件 → 从文件夹 → 选文件夹 → 合并并加载 | 文件多、需反复刷新;一次配置长期复用,新增文件刷新即可 |
| 移动或复制 | 打开目标工作簿 → 右键工作表标签 → 移动或复制 → 选源工作簿 → 勾"建立副本" → 确定 | 两三个文件、一次性;最直观,但要逐个操作 |
| 合并计算 | 数据 → 合并计算 → 选函数(求和) → 添加各文件区域 → 确定 | 只要汇总数字不要明细;各表结构须一致 |
关键设置:表头、列结构、刷新
- 先统一结构再合并(最重要):确保所有待合并文件的列名、列顺序、表头所在行完全一致。多出的空行、合并单元格、小计行都要先清掉,否则合出来的表会错列、多出空行。
- 文件夹要"干净":Power Query 的"从文件夹"会读取该文件夹里所有文件。放进去的必须是同一结构的待合并文件;临时文件、说明文档、已打开的临时缓存文件(如
~$xxx.xlsx)都会导致报错或多余行。 - 表头处理:Power Query 合并时通常选"将第一行用作标题"。若各文件表头不在第 1 行(比如上面还有 2 行标题说明),需在 Power Query 里先做"删除最前面几行"再提升标题。
- 刷新:合并结果上右键 → 刷新;或"数据 - 全部刷新"。源文件夹里新增/修改了文件,刷新就能同步过来,不用重做一遍流程。
Power Query 合并前,务必先备份并核对行数。各文件列顺序不一致时,Power Query 会按列名而非位置匹配——列名对不上(如"金额"vs"金额(元)")就会被单独列到旁边,看似合并成功实则错位。合并完成后核对总行数是否等于各文件行数之和,并抽查几行数据是否张冠李戴。
5 个最容易翻车的坑
- 坑 1 · 列顺序/列名不一致:各表列顺序不同或列名有出入,合并后错列。→ 合并前统一列名与顺序;Power Query 里可用"转换 - 重新排列列"统一。
- 坑 2 · 表头位置不统一:有的表头在第 1 行、有的在第 3 行(上面有标题说明),合并后多出垃圾行。→ 先删掉每个文件表头以上的说明行,保证表头都在第 1 行。
- 坑 3 · 数字是文本:某几个文件的金额列是文本格式(左上角绿三角),合并后求和为 0。→ 合并前把各文件的数值列统一转成数字,或在 Power Query 里改列数据类型。
- 坑 4 · 源文件改了但没刷新:以为合并结果是实时的,其实要手动刷新。→ 源数据变动后右键刷新;要自动可在"查询属性"里设打开文件时刷新。
- 坑 5 · 源文件改名/移动后路径断:文件夹改名或文件被移走,刷新时报错"找不到文件"。→ 保持文件夹路径稳定;移动后需在 Power Query 里改数据源路径。
常见问题
~$xxx.xlsx)。逐个文件核对行数定位问题源,再统一清洗。