AVERAGEX是一个迭代器函数,所有以X结尾的函数都是迭代器函数,它们循环整张表格并为每行计值一个表达式,最后使用不同的算法来聚合结果。
今天我们通过一个业务场景,来探索下AVERAGEX函数的用法。在我们实际业务需求中,经常会遇到总计值不同的情况,今天介绍的这个场景是如何让地区的合计值显示其平均值销售额,而不是销售额总计。
如下图所示:
想要求的结果是总计显示平均值,其他显示每个地区的销售额。也就是我们要改变的是值是总计值,那么问题就转换为如何区分出来总计行。
区分总计行,我们可以想到的函数是SELECTEDVALUE 、HASONEVALUE、HASONEFILTER、ISFILTERED、ISCROSSFILTERED
具体公式如下:
SELECTEDVALUE = SELECTEDVALUE('省份'[地区]) = BLANK()
HASONEVALUE = HASONEVALUE('省份'[地区])
HASONEFILTER = HASONEFILTER('省份'[地区])
ISFILTERED = ISFILTERED('省份'[地区])
ISCROSSFILTERED = ISCROSSFILTERED('省份'[地区])
我们看下公式计算结果