Excel 多表合并:十二个月度文件一次读进来
Excel 多表合并,是财务、审计、运营岗每个月都要重做一遍的事。十二个分公司各报一张表,或者一年十二个月度文件,打开、复制、粘到底下、再检查有没有漏一张。做完这一步才算开始干活,而这一步往往就吃掉半天。
这篇讲的是怎么把它变成一次性的工作:把流程搭一次,以后新文件丢进目录,点一次执行。用的是可视化工作流,全程不写代码。文中提到的节点在 iModel Analytics Studio 里都有,这个版本免费、不限功能。
Excel 多表合并,先分清是纵向还是横向
动手之前必须先想清楚这一点,方向搞错后面全白做。这两种情况在中文里都被叫做「合并」,但用的节点完全不同。
| 你的情况 | 属于 | 用什么 |
|---|---|---|
| 十二个月度文件,列结构一样,想摞成一张 | 纵向追加 | Concatenate |
| 各分公司报的表,格式一致,想汇总到一起 | 纵向追加 | Concatenate |
| 一个工作簿里十二个 Sheet,结构相同 | 纵向追加 | Concatenate |
| 主表缺部门名称,要从另一张对照表补上 | 横向关联 | Joiner |
| 销售表和成本表按订单号拼到一起 | 横向关联 | Joiner |
判断方法很简单:合并之后行数变多,是纵向;列数变多,是横向。本文讲的是纵向那一类,也就是大多数人说的「把多个表合成一个」。横向关联的做法在数据分析教程第五讲里有专门一节。
Excel 多表合并:整个文件夹一次读进来
最省事的做法不是一个个文件去选,而是让流程读整个目录。这样下个月新文件丢进去,什么都不用改。
用到的节点
| 节点 | 中文说法 | 关键设置 |
|---|---|---|
| List Files/Folders | 列出文件 | 指定目录;过滤器填 *.xlsx,避免把临时文件也读进来 |
| Table Row To Variable Loop Start | 循环开始 | 把每个文件路径变成一次循环 |
| Excel Reader | Excel 读取 | 文件路径改用流程变量控制;设置跳过行数与 Sheet 选择 |
| Constant Value Column | 添加固定列 | 加一列记录数据来自哪个文件 |
| Loop End | 循环结束 | 自动把每轮结果纵向摞起来 |
| Concatenate | 追加 | 不用循环时,直接把两三张表接上去 |
| Excel Writer | Excel 写出 | 输出路径可以带上月份,每月自动生成新文件 |
中国式表格的五个坑
上面那套流程在结构规整的数据上跑得很顺。但实际收上来的表通常没那么规整 – 下面这五种情况,几乎每次都会遇到至少两种。
坑一:表头不在第一行
很多单位的报表前面有两三行说明:单位名称、报表期间、编制人。直接读进来,第一行被当成表头,字段名就成了「XX 公司 2026 年 8 月费用明细表」。
解决办法是在 Excel 读取节点里设置跳过的行数。麻烦的是各家跳的行数不一样,这时候不要硬凑,改成读进来之后用行过滤把说明行删掉,再用第一行提升为表头。
坑二:合并单元格
部门列做了纵向合并,看起来整整齐齐,读进来之后只有每组的第一行有值,下面全是缺失值。这是最容易被忽略的一个坑,因为在 Excel 里看不出问题。
处理方法是用缺失值节点,把填充方式设成「用上一个非空值填充」,把合并单元格的效果还原成每行都有值。做完这一步再往下走,否则后面的分组汇总会少算一大批。
坑三:明细里混着小计行
「小计」「合计」「本月累计」这类行夹在明细中间。如果直接汇总,这些行会被重复计算一遍,金额直接翻倍。
用行过滤把包含这些关键词的行剔掉。稳妥的做法是先做一次统计,看看这类行有多少条、分布在哪,确认过滤规则不会误伤真实数据 – 有些公司的部门名称里就带「合计部」这种字眼。
坑四:各家列名不一致
同一个字段,有的写「金额」,有的写「金额(元)」,还有的写「发生额」。追加节点遇到列名不一致时,默认会把两边的列都保留,各自缺的部分补成空值,于是你得到一张列数翻倍、每列只填了一半的表。
正确做法是在追加之前先做列重命名,把各家的写法统一。列很多的时候,可以先建一张对照表,用它驱动重命名,而不是手工改十二遍。
坑五:数字被存成文本
金额列在 Excel 里右对齐不了、也没法求和,读进来之后类型是字符串。原因通常是原表里带了千分位逗号、货币符号,或者是从系统里导出时就带着不可见字符。
用字符处理节点先把逗号和符号去掉,再用类型转换把它变成数值。转换之后一定要看行数有没有变少 – 转不了的值会变成缺失值,那些正是需要人工确认的脏数据。
什么时候用 Excel 自己的功能就够了
不是所有情况都值得搭一条流程。判断标准只有一条:这件事你只做一次,还是每个月都要做一次。
| 情况 | 建议 |
|---|---|
| 就这一次,三五个文件,结构一致 | 直接复制粘贴,十分钟的事 |
| 每月都做,但文件数少、格式稳定 | Power Query 够用,Excel 里就能完成 |
| 每月都做,文件多、格式各异、要清洗 | 值得搭工作流 |
| 合并之后还要关联、汇总、出报表 | 值得搭工作流 |
| 结果要给别人复核,需要说清怎么来的 | 值得搭工作流 |
Power Query 在小规模、格式稳定的场景下确实更方便,不用装新软件。工作流的优势出现在后面三种情况:处理步骤全部留在画布上、每一步都能点开看中间结果、整条流程可以交给同事继续跑。Excel 多表合并,只是这条流程的第一步而已 – 真正省时间的是把后面的清洗、关联、汇总一起串起来。
关键事实
| 适用文件格式 | xlsx、xls、csv;同一流程可混合读取 |
| 单次可合并文件数 | 不设上限,受可用内存约束;上千个文件用循环逐个处理更稳 |
| 是否需要编程 | 不需要,全程拖拽节点配置 |
| 是否需要安装 Excel | 不需要,读写 xlsx 不依赖本机 Office |
| 流程复用方式 | 保存为工作流文件,可发给同事直接打开运行 |
| 软件授权 | iModel Analytics Studio 永久免费,不限功能与使用时长 |
| 运行环境 | Windows;麒麟 V10、V11 与统信 UOS 的 x86-64 版本已完成测试并在客户现场部署 |
| ARM 架构 | 鲲鹏、飞腾的适配在规划中,当前不支持 |
接下来学什么
把多个文件合成一张表,只是整条流程的开头。合完之后通常还要做三件事:补上别的表里的字段、按维度汇总、把结果写回 Excel。这几步在站上的教程里都有分讲:
- 数据分析教程八讲,从第一条工作流讲到月度自动重跑,全程用同一份数据往上加
- 从 Excel 到 iModel,把 VLOOKUP、数据透视表、常用公式逐项对照成工作流的做法
- 数据访问与转换,各类数据源与常用转换节点的完整说明
- 文档中心,需要查某个节点的具体参数时看这里
如果你想看看别人把这类流程用到了什么程度,面向电子表格用户那一篇讲的正是从 Excel 迁过来的实际用法。英文资料方面,KNIME 官方博客也有一篇同主题的 英文教程可以对照着看。
这篇文档对您有帮助吗?
相关文档

