使用Power Query动态更新统计结果,方便到拍案叫绝!
PQ在数据清洗和整理方面很强大,我们前面很多次提到,今天我们这个案例使用其他函数有点麻烦,来看看PQ如何处理!
数据及说明:提取出每组前三的明细
演示版本:office365
加载数据到PQ编辑器
对数据分组(动画演示)
这一步,我们使用PQ的自带分组功能,先按照组别分成一组一组,方便我们单独对每一组处理,这里可以看出PQ中数据类型是可以嵌套的。
当然这里我们也可以手动来写M函数!自动生成的有很多冗余。
提取每组的前三(动画演示)
思路说明:这里的思路主要是按照金额排序(降序),然后提取前3条
过程详解:这一步主要涉及到三个函数,具体下面解释用法
> Table.Buffer:主要是把表加载到内存中,一般操作都不需要这样处理,但是涉及到排序,要不条件索引列要不添加到内存,否则不稳定,容易发生不可预见的错误,大家可以试试不加这个试试。条件索引列效果一样!
> Table.Sort:顾名思义就是排序
官方说明:应该看不出什么~
我们来说一说,
语法:Table.Sort(table,{{排序字段1,升或降},{排序字段1,升或降}……})
升序:默认,或者写0,或者写Order.Ascending,不写的时候,不需要大括号
降序:1或者Order.Descending
每组条件是一个List,全部条件在一个List中!
> Table.FirstN:比较简单,就是获取表的前几行,应该不用解释,看演示即可明白!Table.FirctN(表,前几行)
明细提取并合并(动画演示)
提取表的某一列,我们在之前的文章中有讲过,表名[字段名]
这里就是提取计数列,然后我们使用Table.Combine把所有子表合并到一起!
加载到工作表即可(动画演示)
加载到工作表,选择要存放的位置即可!
使用这种的方式的好处就是数据有更新,结果右击刷新即可,比如下面的演示
自动更新数据(动画演示)
我们修改A组数据和新增C组数据,刷新后结果也会更新新的数据源来重新更新结果,非常方便!