碰到复杂数据源,最头疼的从来不是数据量大,而是格式乱:日期后面拖个时分秒、好几个字段挤在同一列、空值异常值到处掺,每次更新数据都得从头捋一遍。用excel自带的power query做这类清洗特别顺手,它会自动记下你操作的每一步,下次换了新数据点个刷新,就能自动按之前定好的规则重新整理完。
第一步:先确认原始数据的问题
清洗前别急着瞎点按钮,先把原始表从头到尾扫一遍。重点检查字段名规不规范、日期格式统不统一、金额有没有离谱的异常值、客户分类有没有空着的、是不是有好几类信息挤在同一列里。先把所有问题列出来,后面搭Power Query步骤的时候才不会乱套。

如果你的数据区域还没转成表格,先按Ctrl+T做成超级表,再点顶部菜单栏「数据」选项卡,选「从表格/区域」就能进Power Query编辑器。这么操作后续数据往表里加的时候范围不会乱,刷新也能自动识别新增的行,稳很多。
第二步:在 Power Query 编辑器里处理混合字段
遇到一整列塞了好几个信息的情况,比如「分类-商品」「地区/门店/人员」这类拼在一起的字段,直接用「拆分列」功能就行。看实际情况选对应的分隔符,想拆成多列还是多行都可以,拆完给新字段改个好认的名字,后面做分析清楚得多。

拆分之前最好先复制一份查询,或者直接保留原字段不动,免得遇到分隔符不统一把数据搞丢。比如有的行用横杠分隔,有的行用斜杠,先全表统一替换成同一种分隔符,再拆分就不容易出问题。
第三步:统一日期和数据类型
Power Query对日期、数字、文本的类型校验很严。日期列如果混着时分秒,直接把类型改成「日期」就能自动去掉后面的时间;金额列改成小数或者整数就行;编号类字段如果不用来计算,直接留成文本格式,避免前面的0被自动吞掉。

你每改一次数据类型,右边「应用的步骤」栏就会多一条操作记录。哪步做错了不用从头再来,直接删掉那一步,或者退到上一步调整就行,这也是Power Query比手动清洗安全太多的原因。
第四步:用自定义列处理业务规则
碰到要按自定义规则生成新字段的场景,比如金额大于1000自动算折扣、空的客户字段标记成待确认、某几类商品统一归到指定分组,直接点顶部「添加列」选项卡选「自定义列」,把你的业务规则写成公式就好。

公式不用一上来就写得特别复杂,先套个最简单的规则跑一遍,确认结果对了再慢慢加条件。涉及金额、日期的规则,最好特意抽查几个边界值,比如刚好等于1000的行、日期为空的行、分类缺值的行,避免漏判。
第五步:删除空值、异常值和不需要的列
等字段拆分完、数据类型统一好、自定义规则的新字段都生成了,就可以开始清冗余内容了。常规操作包括删掉空行、筛掉null空值、删掉没用的多余列、替换掉错误值,把所有字段名统一成大家都认的口径。这里别上来就把所有空值全删了,不少空值其实对应特定业务状态,得先确认清楚含义再动手。

全部清洗完,点「关闭并上载」,处理好的数据就会导回Excel工作表里。之后原始数据更新,只要字段的整体结构没大改,右键点查询选刷新,Power Query就会照着之前存好的所有步骤自动重新跑一遍清洗。
第六步:让清洗流程更稳定
想让这套清洗流程长期用不出问题,最好给每一步操作都改个好懂的名字,比如「拆分商品字段」「统一日期格式」「删除空客户行」,后续维护的时候一眼就知道每步是干嘛的。原始数据的存放路径、源表名也尽量固定,免得下次刷新的时候找不到文件或者对应表格。
处理复杂数据别想着一步到位,按顺序来:先导数据,再拆混合字段,再统一数据类型,再跑自定义业务规则,最后删没用的字段。按这个流程走,出错了很容易回退排查,之后换其他人接手也能快速看懂。











