使用 Power Query 制作工资条

在公司中,我们经常会见到这样的工资表:

使用 Power Query 制作工资条_第1张图片

然而,我们还需要将它转换成如下图所示的工资条:

使用 Power Query 制作工资条_第2张图片

那么我们如何用Power Query实现这一效果呢?

可以观察到,工资条表由三部分内容构成,分别是原工资表中的工资信息、标题(每一条数据都对应一条标题)和空行。所以我们可以用此三部分合并成需要的工资条表。

使用 Power Query 制作工资条_第3张图片

首先将工资表导入到查询中,命名为“工资表”,并用此表创建3个该表的引用表,分别命名为“工资条”、“空行”和“标题”。

使用 Power Query 制作工资条_第4张图片

怎么将原工资表编辑成全部为空行的表呢?

选中空行表的全部字段,单击【转换】→【文本】→【提取】→【首字符】

使用 Power Query 制作工资条_第5张图片

提取开头的0个字符即可清空表格中的数据

使用 Power Query 制作工资条_第6张图片

可看到结果如下:

使用 Power Query 制作工资条_第7张图片

接下来处理标题表。我们的思路是将原工资表中的数据清空仅留下标题,然后将清空的行填充上标题。

清空表的步骤与上面提取0个首字符的方法相同,然后将标题降级为第一行,方便后续填充。

使用 Power Query 制作工资条_第8张图片

但是,我们发现在进行填充时并没有起作用。原因是,用提取0个首字符的方法得到的空行并非真正为空,我们需要用替换值的方法先将其替换成null。选中表中全部字段,点击【转化】下的【替换值】,如下图:

使用 Power Query 制作工资条_第9张图片

再将标题降级为第一行,进行向下填充,得下表:

使用 Power Query 制作工资条_第10张图片

为了保证最后的结果准确,需要去掉两行标题,这个通过两次【将第一行用作标题】即可实现。

之后我们需要分别在三个表中加索引列,这样三个表追加到一起后才能根据我们想要的结果排序。三个表中的索引起始值要不同,其中工资条表的起始值可以设为0,空行设为1,标题设为2,增量均为3。

添加完索引后,将工资条表、空行表和标题表追加到一起,将索引列按升序排序,之后删掉索引列即可得到我们需要的工资条表。

有木有很简单嘞?快动手试试吧!


* *PowerPivot工坊原创文章,转载请注明出处!*

如果您想深入学习微软Power BI,欢迎登录网易云课堂试听学习我们的“从Excel到Power BI数据分析可视化”系列课程。或者关注我们的公众号(PowerPivot工坊)后猛戳”在线学习”。

file


长按下方二维码关注“Power Pivot工坊”获取更多微软Power BI、PowerPivot相关文章、资讯,欢迎小伙伴儿们转发分享~

你可能感兴趣的:(power,BI,可视化,大数据,数据分析,数据可视化)