我对Power BI/DAX很陌生,并且无法使运行总计按我需要的方式工作。假设数据如下表:
User month sales
UserA 1/1/2019 1
UserB 1/1/2019 3
UserC 1/1/2019 2
UserA 2/1/2019 1
UserB 2/1/2019 3
UserC 2/1/2019 2
UserA 3/1/2019 1
UserB 3/1/2019 3
UserC 3/1/2019 2
我一直在环顾四周,我发现以下公式以我需要的方式为我提供了一个很好的运行总计:
AllSales =
calculate(
sum('table'[Sales]),
filter(
all ('table'),
'table'[date] <= max ('table'[date])
)
)
--
Total 6 12 18 18
当我想以矩阵形式看到它并且用户分解为存储桶时,问题就来了。当我这样做时,每个用户的销售数量是相同的:
UserA 6 12 18 18
UserB 6 12 18 18
UserC 6 12 18 18
Total 6 12 18 18
我想要的结果如下所示:
UserA 1 2 3 3
UserB 3 6 9 9
UserC 2 4 6 6
Total 6 12 18 18
我相信我理解为什么 ALL 函数会导致这种情况,但我不知道如何调整它或切换到哪个函数来解决此问题。任何帮助将不胜感激。谢谢!
不要将 ALL 应用于整个表,而是仅将其应用于所需的列:
AllSales =
CALCULATE (
SUM ( 'table'[Sales] ),
FILTER ( ALL ( 'table'[date] ), 'table'[date] <= MAX ( 'table'[date] ) )
)