Power Query:10分钟搞定别人2小时的数据清洗工作

Power Query:10分钟搞定别人2小时的数据清洗工作

 次点击
12 分钟阅读

如果你还在手动复制粘贴、删除空行、拆分列... 停下,让Power Query来拯救你。


先说说Power Query是什么

它是Excel 2010之后版本自带的一个功能(2016+在数据选项卡,2010/2013需要单独下载插件)。

简单说:一个可视化的数据清洗和转换工具

你不需要写VBA,不用记复杂的公式,点几下鼠标就能完成:

  • 合并多个文件
  • 清洗脏数据
  • 转换格式
  • 建立自动更新的报表

最重要的是:它是自动化的。源数据更新了,刷新一下就能得到新结果。


实战案例:合并100个Excel文件

场景: 你有100个分公司的报表,格式都一样,要汇总到一张总表。

以前的做法: 复制粘贴100次,或者写VBA代码。

Power Query做法:

第一步:把文件放到一个文件夹

所有要合并的Excel文件放在同一个文件夹,比如 D:\报表\分公司数据\

第二步:打开Power Query

Excel 2016+:数据 → 获取数据 → 从文件 → 从文件夹

第三步:选择文件夹

浏览到刚才的文件夹,确定。

第四步:筛选文件

这时候会看到文件夹里所有文件。点筛选:

  • 只保留 .xlsx 文件(排除其他类型)
  • 排除"汇总"这种结果文件(如果有的话)

第五步:提取内容

点击「添加列」→「自定义列」,输入:

=Excel.Workbook([Content])

这一列现在包含了每个Excel文件的内容。

第六步:展开数据

点击新列右上角的展开按钮,选择:

  • 展开「Data」列(这就是每个文件的Sheet数据)

第七步:处理表头

如果每个文件第一行是表头,需要做:

  • 点击「将第一行用作标题」

第八步:清理不要的列

删除这些列(右键 → 删除列):

  • Content(原始二进制内容)
  • Name(文件名)
  • 其他不需要的列

第九步:加载到Excel

点击「关闭并上载」,数据就回到Excel了。


神奇的事情发生了

现在你的文件夹里新增一个文件,只需要:

数据 → 刷新全部

新文件的数据自动出现在总表里。

不需要重新运行任何步骤。


进阶:处理不同格式的文件

如果每个分公司的表格式略有不同(比如有的多一列,有的列顺序不一样),可以在合并前:

  1. 先选一个"标准"文件,单独导入Power Query做清洗
  2. 定义好标准格式(列名、数据类型等)
  3. 把这个查询作为"函数",应用到文件夹里的所有文件

这需要用到「自定义函数」,稍微进阶一点,但学会之后几乎无所不能。


常见数据清洗操作(不用写公式)

删除空行

主页 → 删除行 → 删除空行

删除重复项

主页 → 删除行 → 删除重复项

拆分列

主页 → 拆分列 → 按分隔符

比如"姓名-部门"拆成两列。

替换值

主页 → 替换值

把"男/M"统一替换成"男"。

更改数据类型

点击列标题 → 选择数据类型(文本、数字、日期等)

Excel就不会把身份证号变成科学计数法了。

添加计算列

主页 → 添加列 → 自定义列

可以写简单的公式,比如:

= [销售额] * 0.05

计算提成。


一个实用的清洗流程模板

1. 导入数据(从文件/从文件夹/从表格)
2. 提升第一行为标题
3. 删除空行
4. 删除完全空白的列
5. 删除重复项(如果需要)
6. 拆分需要拆分的列
7. 替换统一格式的值
8. 更改数据类型
9. 添加计算列
10. 加载到Excel

这个流程基本能应对90%的数据清洗场景。


版本差异

版本 Power Query位置
Excel 2010/2013 需要单独下载插件
Excel 2016+ 数据 → 获取数据
Excel 365 数据 → 获取数据(功能最全)

一句话总结

Power Query = 数据清洗的自动化工厂。一次设置,永久使用。

如果你每天花大量时间在复制粘贴和整理数据上,花2小时学会Power Query,能给你省出200小时。


我第一次用Power Query合并12个月报表的时候,简直惊呆了。以前一上午的活,现在点一下刷新就搞定。这工具真的改变了我对Excel的认知。

© 本文著作权归作者所有,未经许可不得转载使用。