如何用Power Query在WPS表格中批量合并多文件夹Excel?

功能定位:为什么选 Power Query 做“多文件夹”合并
在 WPS Spreadsheets 里,Power Query(官方中文名“查询与连接”)的定位是“ETL 轻量引擎”:把分散在本地、局域网甚至金山云盘的 Excel 文件,按统一字段拼成一张主表,并保留刷新按钮,后续只需“一键追加”。相比传统“复制粘贴+VBA”,它把“路径遍历→字段对齐→类型清洗→结果落地”四步封装成可回放的 M 查询,维护成本接近于 0。
2026 年 3 月更新后,WPS 把 Power Query 入口从“数据”选项卡拆成独立面板,并新增“从文件夹”批量识别子目录,补齐了 Excel 365 早已有、但 WPS 用户一直缺席的“多级文件夹”场景。至此,政企财务、电商运营、教培教务等需要“每月把各片区/各店铺/各班级报表拼成总账”的重复劳动,才算真正可以零代码落地。
前置条件与版本边界
1. 仅 Windows 版 WPS Office 2026(截至当前的最新版本)提供完整 Power Query 面板;macOS 与 Linux 版暂缺“从文件夹”入口,可用“从工作簿”逐一手动添加,但失去自动遍历子目录能力。
2. 源文件必须是 .xlsx/.xlsm/.xlsb 三者之一;.et 与 .csv 虽能识别,但会触发“列类型推断失败”警告,需要二次手动指定。
3. 若公司使用金山云“量子加密协作文档”,需先在“权限管理”把目标文档降为“普通加密”,否则 Power Query 会因无法解密而报 0x80070005。
操作路径:三步把“多文件夹”变一张表
Step 1 选源:一次性指向顶层文件夹
- 打开 WPS 表格 → 菜单栏出现“查询与连接”(若未出现,文件-选项-高级-启用 Power Query 插件)。
- 单击“新建查询-从文件-从文件夹” → 在弹出的资源管理器里选中“顶层文件夹”(含数十个子文件夹也可)。
- 系统会弹出“导航器”,左侧树状展示所有子目录,右侧预览区默认只显示“第一行数据”。此时不要急着点“加载”,先点“转换数据”进入 Power Query 编辑器,这是避免把无效工作表直接导入模型的关键。
Step 2 过滤:只保留含“数据”的工作表
在编辑器里,你会看到系统自动生成的四列:Folder Path、File Name、Sheet Name、Data。Data 列是二进制,需要展开。此时先利用“筛选”把 Sheet Name 里带“目录”“空白”“模板”字样的行剔除,经验性观察可减少 30% 展开时间;接着在“添加列”选项卡点击“自定义列”,输入公式 =Excel.Workbook([Data], true, true),命名新列 WB。
Step 3 展开:统一字段并落地
点击 WB 列右上角双箭头 → 仅勾选“Data”子表 → 取消“使用原始列名作为前缀”。此时所有工作表被纵向追加,但列名可能错位(如“销售额”/“Sales”/“金额”)。在“转换”选项卡使用“将第一行用作标题”统一抬升列名,再点“关闭并加载至…” → 选择“仅创建连接+数据模型”,最后在工作簿新建一张“汇总”工作表,插入“数据透视表”引用该模型即可。
提示
若源文件列顺序不一致,可在编辑器里使用“透视列”功能把“字段名”变成行,再“取消透视”还原,即可实现列对齐而无需手动拖拽。
平台差异与回退方案
Windows 版支持完整 M 语言;Android/iOS 版 WPS 目前只能“查看”已生成的查询,无法新增“从文件夹”。若出差途中必须刷新,可让同事在 Windows 端打开文件点“刷新”,云端会自动回写至金山云,手机端即可看到最新汇总。若电脑临时崩溃,可在“查询与连接”右侧面板 → 右键“导出连接”生成 .odc 文件,重装后双击即可恢复,无需重新配置。
常见失败分支与排查
| 现象 | 最可能原因 | 验证与处置 |
|---|---|---|
| 导航器空白 | 顶层文件夹含 0 个支持的 Excel 文件 | 在资源管理器搜索“*.xlsx”确认;如只有 .et,先“另存为”xlsx |
| 展开时报“无法识别二进制” | 文件被加密或已损坏 | 手动打开任一文件,若提示“需要修复”,先另存修复后再试 |
| 列名错位导致透视表求和为 0 | 大小写或全半角不一致 | 在编辑器使用“列名清洗”→“小写”+“修剪”,再“合并列”重建主键 |
不适用清单:什么时候别用 Power Query
- 实时性高于 5 分钟:Power Query 刷新最短间隔也是手动或 VBA 触发,无法做到“秒级”流式追加;需要实时看板请用金山云“数据洞察”直连数据库。
- 单表超过 200 万行:WPS 的 Power Query 仍受 32 位内存限制,经验性观察 150 万行以上刷新会掉到 1 分钟+;超大数据量请用 Power BI 或数据库。
- 文件夹路径频繁变动:查询把绝对路径写死在 M 语句里,若每月更换共享盘盘符,需要手动改源;可改用“参数表”把路径写在单元格,再于 M 语句引用该参数,但需启用“快速合并”安全设置。
最佳实践 7 条:让模板一次建好,新人零学习
- 统一命名:让各区域文件使用“年月_地区.xlsx”格式,方便用 Text.BeforeDelimiter 拆分列做后期透视。
- 留空表头:不要在第一行写标题,把字段名放在表头行,Power Query 能自动识别为列名,减少“提升标题”步骤。
- 提前删除小计行:源文件里的小计/总计行会导致重复,使用“筛选-删除错误”或“删除重复”即可。
- 建立“刷新日志”工作表:在查询选项里勾选“刷新后写入日志”,可追踪谁何时刷新,方便审计。
- 用“连接-only”而非“加载到表”:除非财务必须看明细,否则只把结果给数据模型,文件体积可降 70%。
- 给查询写中文备注:在“查询设置-属性”填写用途与负责人,半年后交接不迷路。
- 关键字段设置数据类型“文本”而非“任意”:避免数字编码被自动转为科学计数法,导致 VLOOKUP 失效。
与第三方 Bot 的协同(可选)
若企业使用“第三方归档机器人”每日把各系统导出放到共享盘,可在机器人完成拷贝后,调用 Windows 计划任务执行以下脚本,实现“无人值守刷新”。示例命令(路径请按实际改写):
"C:\Program Files (x86)\Kingsoft\WPS Office\12.6.0.5803\office6\et.exe" /api PowerQueryRefresh /file:"D:\汇总模板.xlsx"
经验性观察:任务计划里若同时勾选“无论用户是否登录都运行”,需把文件路径写成 UNC 网络路径,否则刷新会因找不到映射盘符而报“数据源找不到”。
警告
启用宏命令刷新会触发 WPS 的“外部数据警告”,若公司组策略禁用宏,则此方法无效,只能手动刷新。
FAQ:WPS Power Query 高频疑问
刷新后数字列变成科学计数法怎么办?
在 Power Query 编辑器选中该列 → 数据类型下拉改为“文本”而非“小数”,再关闭并加载即可保留原始编码。
能否只合并指定文件前缀?
可以,在“添加列”写自定义列 =Text.StartsWith([File Name],"北京"),然后筛选 TRUE 即可。
查询刷新越来越慢如何提速?
先启用“查询选项-快速加载”,再把源文件拆分为每年一个顶层文件夹,减少遍历深度;经验性观察可把刷新时间减半。
Mac 版什么时候支持文件夹合并?
截至当前的最新版本尚未提供,官方未公布路线图;可先用 Windows 虚拟机或远程桌面刷新。
刷新会覆盖手动补充的列吗?
会。不要把补充数据写在查询输出表里,应另建工作表用 XLOOKUP 引用查询结果,实现“分析层”与“数据层”分离。
总结与下一步行动
Power Query 在 WPS 表格里已不再是“阉割功能”,2026 版把“从文件夹”入口补齐后,批量合并多文件夹 Excel 正式迈入零代码时代。核心收益是“模板一次搭建,新人一键刷新”,但边界同样明显:超大实时数据、频繁路径变动、离线 Mac 场景仍需让位给专业 BI 或脚本方案。
如果你正被“每月手工拷表”折磨,立刻按本文 Step 1-3 搭一个最小可运行模板;先选 3 个子文件夹、30 个文件验证刷新耗时,确认性能可接受后再全量迁移。记得把“刷新日志”与“参数表”一起上线,半年后你会感谢今天留下的备注。