“如何在 Power BI 中创建一个度量来计算两个选定年份之间的差异 (%),其中用户可以从同一报表页面上的切片器选择参考年份和比较年份?”
我在 Power BI 中创建了两个切片器:一个用于参考年,另一个用于比较年。我使用
SELECTEDVALUE
函数来捕获用户选择的年份,并且我编写了一个度量来计算每个选定年份的值之间的差异。
Change in % 2 =
VAR YearReference = SELECTEDVALUE('Dates'[Years])
VAR YearCompared = SELECTEDVALUE('Dates'[Years])
VAR ReferenceValue =
CALCULATE(
SUM('GNA (2)'[Value (TEU)]),
'GNA (2)'[Year] = YearReference
)
VAR ComparedValue =
CALCULATE(
SUM('GNA(2)'[Value (TEU)]),
'GNA(2)'[Year] = YearCompared
)
RETURN
IF(
ISBLANK(ReferenceValue) || ISBLANK(ComparedValue),
BLANK(),
DIVIDE((ComparedValue - ReferenceValue), ReferenceValue, 0) * 100
)
您需要确保 PBI 区分参考切片器中选择的年份和比较切片器中选择的年份。由于两个切片器使用同一列(“日期”[年份]),因此您需要确保该度量处理他们分开。
Change in % =
VAR YearReference = SELECTEDVALUE('Dates'[Year]) -- Capture year from the reference slicer
VAR YearCompared = SELECTEDVALUE('Dates'[Year]) -- Capture year from the comparison slicer
VAR ReferenceValue =
CALCULATE(
SUM('GNA (2)'[Value (TEU)]),
YEAR('GNA (2)'[Date]) = YearReference -- Use the date's year from the GNA table
)
VAR ComparedValue =
CALCULATE(
SUM('GNA (2)'[Value (TEU)]),
YEAR('GNA (2)'[Date]) = YearCompared -- Use the date's year from the GNA table
)
RETURN
IF(
ISBLANK(ReferenceValue) || ISBLANK(ComparedValue),
BLANK(),
DIVIDE((ComparedValue - ReferenceValue), ReferenceValue, 0) * 100
)