表哥表妹们肯定都有一个共识:BI 不怕需求难,最恨数据不规范!


一天收上来几十份 Excel 数据表,一看数据格式,各种五花八门的问题,直接炸了。这成千上万条数据要怎么清洗?


我曾经教过大家用函数清洗数据的方法,具体可参见


用函数可以完成大部分数据清洗,但是不能 100%,比如数字前面多了一个“0”,象 01234 这种,用文中两个函数没法让它变成 1234。


而且用函数毕竟还是费时,我今天要教大家另外一个大杀器:只要将数据传到 Power Query 跑一圈,什么都不用做,所有数据都清洗好了。


而且这方法一劳永逸,以后哪怕再有新增的不规范数据,只要刷新一下就能自动更新出一张干净的数据表。


案例:


下图中的学号本该是 6 位数字,可是现在每个单元格左上方都有个绿色小箭头,说明数字格式有问题。


请用最快捷的方式清洗数据,让所有学号恢复成 6 位 的数字格式。


解决方案:


1. E 列的“学号”格式是规范的,但是由于 A 列数据源的不规范,在 F 列使用 vlookup 函数查找姓名时,根本找不到。


2. 现在开始清洗步骤:选中需要清洗的数据区域的任意单元格 --> 选择菜单栏的“数据”-->“从表格”


3. 弹出的对话框中会自动选中数据表区域,且勾选了“表包含标题”--> 点击“确定”


数据表就传到 Power Query 编辑器中,并且已经自动清洗干净了!


你看,我在 Power Query 中什么都没有做,数据就自动清!洗!干!净!了!


4. 选中菜单栏的“主页”-->“关闭并上载”-->“关闭并上载”


Excel 工作簿中会出现一个新的 Sheet2,其中存放的是 Power Query 洗过的数据。


5. 现在回到 Sheet1,将 F 列中 vlookup 公式的待检索区域换成 Sheet2 的表格区域,就发现姓名都查找出来了,说明“学号”列的数据都清洗干净了。


6. 我们现在来试一下:如果新增不规范数据,刷新以后是否会自动清洗?


在 A15:B15 行新增数据,A15 单元格的学号同样是不规范数据;在 F15 单元格用 Ctrl+D 复制楼上的公式。


因为 Sheet2 中还没有这个新增的学号,所以此时还查找不到对应的姓名。


7. 切换到 Sheet2 --> 选中表格的任意区域 --> 右键单击 --> 在弹出的菜单中选择“刷新”。


新增的学号和姓名就出现在表格末尾,而且数据自动清洗好了。


8. 再次回到 Sheet1,此时可以看到 F15 单元格成功查找到了“李四”。

很多同学会觉得 Excel 单个案例讲解有些碎片化,初学者未必能完全理解和掌握。不少同学都希望有一套完整的图文教学,从最基础的概念开始,一步步由简入繁、从入门到精通,系统化地讲解 Excel 的各个知识点。

现在终于有了,以下专栏,从最基础的操作和概念讲起,用生动、有趣的案例带大家逐一掌握 Excel 的操作技巧、快捷键大全、函数公式、数据透视表、图表、打印技巧等……学完全本,你也能成为 Excel 高手。