WPS Office logoWPS Office
菜单
数据合并

如何用WPS表格Power Query批量合并不同文件夹的CSV文件?

WPS官方团队
WPS表格如何用Power Query合并CSV, 怎么批量导入多文件夹CSV到WPS, WPS Power Query合并CSV步骤, CSV列名不一致如何对齐WPS, Power Query刷新失败怎么办, WPS表格是否支持文件夹路径参数, 批量合并CSV保留源文件名列, WPS Power Query与Excel功能差异, 无代码实现CSV自动化合并, WPS合并CSV后数据类型错误怎么修复

功能定位:为什么选Power Query而不是传统复制粘贴

在WPS表格里,Power Query(官方中文名“查询与连接”)把“文件夹→CSV→合并→清洗”做成一条可刷新流水线。相比手动复制粘贴或VBA,它的最大优势是结构一次定义、数据无限追加:只要往文件夹扔新的CSV,下次点“刷新”即可同步到结果表,无需再调公式。

经验性观察:当CSV超过50个、单文件大于1万行时,Power Query刷新速度明显快于传统公式汇总,CPU占用峰值下降约一半(测试环境:i5-1240P/16 GB,具体数值因设备而异)。

功能定位:为什么选Power Query而不是传统复制粘贴
功能定位:为什么选Power Query而不是传统复制粘贴

前置检查:版本、路径与格式约束

最低版本与入口

截至当前的最新版本(12.8.1),Power Query已集成在Windows版WPS表格,macOS与Linux版暂不支持。入口:数据→查询与连接→新建查询→从文件夹。若未看到该按钮,请在右上角全局搜索框输入“查询与连接”快速定位。

CSV格式底线

1. 统一编码UTF-8或GB18030,混用会出现中文乱码;2. 列名放在第1行,且列顺序可不同——Power Query会按列名匹配;3. 不要出现空文件,否则刷新时报“二进制0字节”错误。

核心操作:四步完成首次合并

  1. 准备文件夹:在D盘新建“销售原始数据”,把所有CSV直接放入,不要套第二层文件夹。
  2. 新建查询:打开空白WPS表格→数据→查询与连接→新建查询→从文件夹→选中“销售原始数据”→确定。
  3. 筛选与合并:在文件列表界面,先删除无关列(如扩展名、创建时间),只保留Content与Name;点击合并→合并并加载→选择“CSV文档”→确定。
  4. 列对齐:若各文件列名不完全一致,Power Query会弹出“选择列以匹配”窗口,勾选自动匹配相似列名即可。

完成后,WPS会生成一张新工作表“销售原始数据”,右侧出现“查询&连接”窗格。以后只要把新CSV扔进同一文件夹,回到表格点数据→刷新全部,新数据就会追加进来,旧数据自动去重(取决于你下一步设置的合并方式)。

分支场景:增量刷新与全量覆盖怎么选

场景A:每日新增文件,历史文件不动

在Power Query编辑器里,点击“开始→高级编辑器”,把M代码第二行Options=[Incremental=true]改为true(若默认无此行,手动添加)。保存后,刷新时仅读取新增文件,经验性观察可把刷新时间缩短60%以上(测试样本:300个CSV共1.2 GB)。

场景B:同名文件被覆盖,需全量重新合并

保持默认设置即可。Power Query每次刷新会重新读取整个文件夹,适合源文件会被覆盖的场景,如ERP系统每日导出同名CSV。

数据清洗:一步去空行、改列类型

合并后常见脏数据:1. 多余空行;2. 数字被当文本导致求和失败。在Power Query编辑器:

  • 去空行:选中列→开始→删除空行。
  • 改类型:选中金额列→转换→数据类型→小数;若出现“Error”提示,用“替换错误”把无法转换的值填0。

清洗步骤会被记录成“应用步骤”,下次刷新自动重跑,无需手工再清洗。

常见失败与回退方案

报错提示最可能原因快速处置
无法将列“日期”转换为DateCSV里混用“2026/3/8”与“8-Mar-26”转换前加“使用区域设置”→英语(英国)
二进制0字节文件夹出现空CSV文件列表界面先筛选“Content长度>0”
刷新后重复行翻倍把旧文件改名后重新导入在“源”步骤加筛选Name不包含“_旧”
常见失败与回退方案
常见失败与回退方案

性能边界:文件多大、列多少会卡

经验性观察:在16 GB内存、SSD环境下,合并500 MB以内CSV(约100个文件、单文件5万行)仍可保持“数十秒内”刷新;超过1 GB时,界面会出现“正在加载”进度条,期间勿强制关闭WPS,否则可能损坏查询结构。若预期突破该量级,建议把CSV先压缩成Parquet或使用WPS直连数据库。

与第三方自动化工具协同

企业场景常把“ERP导出→CSV→合并→图表”做成无人值守流水线。可用Windows任务计划程序每日凌晨调用脚本把CSV丢入目标文件夹,WPS表格文件则放在OneDrive或企业NAS,通过文件→选项→信任中心→允许后台刷新,实现“开机自启WPS→自动刷新→保存→飞书群机器人推送”。权限最小化原则:给脚本账户仅授予文件夹“写入”权限,WPS文件只读即可,防止误删。

何时不该用Power Query

  • 源数据需实时双向回写:Power Query是只读流水线,无法把结果写回CSV。
  • 需要按行级权限脱敏:Power Query合并后所有数据进入内存,无法动态隐藏部分行。
  • 文件夹路径频繁变动且无法映射网络驱动器:查询依赖绝对路径,频繁改路径需手动编辑M代码。

最佳实践12条速查表

  1. 统一CSV编码与分隔符,避免“中文问号”。
  2. 列名放在第1行,且不要出现合并单元格。
  3. 文件夹层级保持“扁平”,不套空文件夹。
  4. 先删无关列再合并,减少内存占用。
  5. 金额/日期列在Power Query里提前定型,别留在Excel公式里改。
  6. 刷新前按Ctrl+S保存,防止崩溃丢失查询。
  7. 用“保留查询但仅创建连接”模式,避免生成中间工作表。
  8. 文件名带日期戳,便于回溯。
  9. 定期用“文件→选项→查询缓存→清除”释放磁盘。
  10. 超过1 GB数据时,考虑拆分成月文件夹再分别合并。
  11. 把最终报表与原始查询分文件存放,降低损坏风险。
  12. 上线前用“数据→查询→复制→粘贴为值”做快照,防止源文件被误删导致空白。

验证与观测方法

1. 在查询编辑器右侧“应用步骤”最后一步手动加“保留行数”步骤,刷新后对比行数是否与预期一致;2. 用WPS内置“性能诊断”插件(12.8.1起默认安装)记录刷新耗时,观察是否随文件量增加线性上升;3. 对金额列做求和,与原始CSV手工汇总结果交叉验证,误差为0即通过。

FAQ:常见3问

刷新时报“找不到文件夹”怎么办?

查询用绝对路径,若文件夹被移动,需在“查询→源”步骤里重新选择新路径,或把文件夹映射成固定盘符(如X:),以后换电脑只需保证盘符一致即可。

合并后日期变成五位数如何修复?

这是Excel序列号格式,回到Power Query→选中日期列→转换→使用区域设置→日期→中文(中国)→确定,刷新后即可恢复yyyy-mm-dd格式。

能否只合并特定文件名前缀?

可以。在“源”步骤后加筛选→Name包含“SH_”即可,只有前缀为SH_的CSV会进入合并流程,其余文件被忽略。

收尾:下一步行动清单

如果你第一次接触,建议立刻按本文“四步合并”做一次最小闭环:找3个CSV,10分钟跑通刷新。验证成功后,再把真实历史文件夹整体迁移进去,逐步加上数据清洗、增量刷新、自动保存。记住,Power Query的最大价值是“把一次性苦力变成可重复资产”,越早封装成模板,后期省下的时间越多。