我有一个矩阵Power BI可视化,就像
Jan Feb Mar April
Client1 10 20 30 10
Client2 15 25 65 80
Client3 66 22 54 12
我为每个客户端创建了3个参数切片器表(具有从1到4的值)的内容
例如,如果第一个切片器的值是1,第二个是2,第三个是2,那么我想要
Jan Feb Mar April
Client1 0 20 30 10
Client2 0 0 65 80
Client3 0 0 54 12
也就是说,它应该用零替换值。我已经能够使用Dateadd函数为一个客户端实现这一目标(通过添加月份)
Measure = CALCULATE(SUM('Table'[Value]),
DATEADD('Table'[Column], Parameter[Parameter Value], MONTH))
并且我已经使用此度量来显示值,但是如何使其适用于其他两个客户端。
假设您有三个参数表,如下所示
Parameter1 Parameter2 Parameter3
Value1 Value2 Value3
------ ------ ------
1 1 1
2 2 2
3 3 3
4 4 4
他们每个人都有自己的切片机。那么你所追求的措施可能看起来像这样:
Measure =
VAR Val1 = MAX(Parameter1[Value1])
VAR Val2 = MAX(Parameter2[Value2])
VAR Val3 = MAX(Parameter3[Value3])
VAR CurrClient = MAX('Table'[Client])
VAR CurrMonth = MONTH(DATEVALUE(MAX('Table'[Month]) & " 1, 2000"))
RETURN SWITCH(CurrClient,
"Client1", IF(CurrMonth <= Val1, 0, SUM('Table'[Value])),
"Client2", IF(CurrMonth <= Val2, 0, SUM('Table'[Value])),
"Client3", IF(CurrMonth <= Val3, 0, SUM('Table'[Value])),
SUM('Table'[Value])
)
基本上,您读入每个参数并将它们与当前单元格中的月份进行比较。