路易三十六
于 2019-03-25 16:57:02 发布
10448
收藏 31
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
学习好 Power Query真的对工作非常重要,让非常复杂的问题,在可视化界面直接傻瓜式点击实现我们的想法,不再需要写一些复杂的函数和 VBA 编程
本遍文章主要讲解
- Power Query 实现中国式排名
- Power Query 实现分组中国式排名
- Power Query 生成笛卡尔积表
- Power Query 实现多行相同属性合并
Power Query 实现中国式排名
左边图表为源数据,右边图表为目标
数据加载进查询编辑器,复制多一个查询,修改名称为销售额去重
删除多余的列
.
删除重复的行
添加索引
回到原来的表格,使用合并查询
将其扩展开
ok,处理完毕
关闭上载至 Excel 即可
得出来结果如下
Power Query 实现分组中国式排名
还是同样的表格,但是按照部分类别实现销售代表排名
左边为原表格,右边为目标表格
把数据加载进查询编辑器,首先复制一份相同的查询
删除销售代表列,按照(部门,销售额去重)
添加索引列
复制一份这个查询
在新复制出来的查询使用分组依据,找出部门类别索引序列的最小值
回到表 2 合并查询最小索引顺序列进来
把结果扩展出来
表 2 效果图如下
回到原始表,使用合并查询
扩展出来
添加一个自定义列
得到结果
把多余的列删除
关闭上载,得到结果
Power Query 生成笛卡尔积表
工作中我们会遇到下面的问题,销售代表所有月份(左边两个为原表,最右边为目标表)
首先把原数据两张表加载进查询编辑器
月份这个表加载进来数据类型有点问题
在两个表格新增一列(辅助列全是 1)
使用合并查询功能
扩展月份
把多余的列删除
关闭并上载
组合完毕
Power Query 实现多行相同属性合并 Excel
原表格与目标表格,多行相同和合并第二行内容并用分割符开
方法一:(在销售人员不增加情况适用)
首先我们还是把数据加载进查询编辑器,复制相同的查询,在原始查询中(删除销售金额,添加索引列)得出效果如下
透视索引列
合并列
返回一步去添加销售代表前缀
使用第二个查询表,使用分组依据
得到表格如下
两个表合并查询
扩展出来
整理完毕,关闭上传
方法二:(适用所有情况,无论新增销售人员还是减少销售人员)
当然啦上面有一步不是很好,就是合并其他列这一步,但我们手动添加数据时候,还是需要手动操作,我们使用 M函数优化一下
目前有 16 个销售代表,假如新增的话就不生效了
直接分组依据
会报错
修改 M 函数
处理完毕