学会这个技巧,再也不用手工比较每周指标

大家好,今天讲一下DAX计算列的使用。

以库存管理为例。在涉及到库存管理时,管理者通常会把当下产品的库存和前一段时间的库存放一起看,比较一下库存的变化情况,比如下面这样的:

file

用Excel做的话免不了VLOOKUP,型号多了,数据量大了,每周手工更新也挺烦的,机械重复的程式化工作何不自动化实现呢?

每天都不用管,打开数据就是最新的状态,这样不好吗? 当然好,怎么实现?写编程代码?当然不用,就用DAX计算列就可以了!

库存报告定时每周一做,那上周,上上周,都是本周减7天了,用EARLIER或者VAR变量获得当前行来匹配具体的产品型号。

下面是具体的实现过程:

file

把库存清单数据导入power pivot模型:

file

导入之后,就开始写DAX计算列了,上一周的库存数据如下:

上一周库存=

CALCULATE (
SUM ( '表1_2'[库存] ),
FILTER (
'表1_2',
'表1_2'[日期]
= EARLIER ( '表1_2'[日期] ) - 7
&& '表1_2'[重点产品] = EARLIER ( '表1_2'[重点产品] )
)
)

EARLIER(列)可以理解为当前行,比如2019-11-4的A产品上周的库存就是日期=EARLIER(日期)-2019-11-4,产品=EARLIER(产品)-A产品,上周的库存,就是本周减7天,EARLIER(日期)-7。

同样的,前两周就是EARLIER(日期)-14,前三周就是EARLIER(日期)-21,以此类推,再写几个相邻周比较的计算列(对应两列直接相减即可)。

这样计算列就写好了:

file

学会这个技巧,再也不用手工比较每周指标

再写几个度量值:

本周库存:=SUM([库存])
上周库存:=SUM([上周])
前两周库存:=SUM([前两周])
前三周库存:=SUM([前三周])
前四周库存:=SUM([前四周])
本周变化值:=SUM([较上周变化])
上周变化值:=SUM([较前两周变化])
上上周变化值:=SUM([较前三周变化])

然后生成透视表:

file

file

直接这么透视是有问题滴,这样就把所有日期全汇总了,需要有日期筛选,加个筛选器或切片器,然后把行标签改为重点产品,这样模板就生成了。

file

日期可以任意筛选,筛选的日期就是对应的本周,其他的上周,前两周,都是在筛选日期基础上往前推移,想看哪周就看哪周~~

完美主义者可以再调下格式,这样会看的舒服一些。

file

这样模板定下来后,每次刷新数据源即可,基本就是自动化了,感觉双手又一次被解放,好开心~~

这里有一个需要注意的问题是,库存清单数据需要SUMMARIZE,日期和产品要去重哦,不然,计算列会多计算重复的数据!

本期内容就是这些,小伙伴们下期再见!

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

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


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

Power Pivot工坊