嗨,我有以下数据
+-----------------------------------+
|WEEK |REVENUE |
+-----------------------------------+
|03/09/2020 |$1000 |
+-----------------------------------+
|03/16/2020 |$900 |
+-----------------------------------+
|03/23/2020 |$1050 |
+-----------------------------------+
我需要的输出是上周的收入($ 1050)除以上周的收入($ 900),即 1050/900-1 = 0.166
输出
+-----------------------------------+
|WEEK |REV WoW% |
+-----------------------------------+
|03/23/2020 |17% |
+-----------------------------------+
我写的公式如下
Rev WoW% =
IF(
ISFILTERED('2020 Data'[Week]),
VAR __PREV_WEEK =
CALCULATE(
SUM('2020 Data'[Revenue]),
DATEADD('2020 Data'[Week].[Date], -7, DAY)
)
RETURN
DIVIDE(SUM('2020 Data'[Revenue]) - __PREV_WEEK, __PREV_WEEK)
)
当前使用上面的公式,我得到0%,而我应该得到17%。请帮我解决这个问题。
答案 0 :(得分:0)
具有所需结果的屏幕截图
我首先使用以下表达式创建了计算列作为Previous(上一个)
Previous = var PreviousDate = MAXX(FILTER(ALL('Table');EARLIER('Table'[Week].[Date]) >'Table'[Week].[Date]);'Table'[Week].[Date])
Return CALCULATE(MAX('Table'[Revenue]);FILTER('Table';'Table'[Week].[Date]=PreviousDate))
然后我创建了另一个计算列,作为带有belw表达式的Output,它基于上一列
Output = If(ISBLANK('Table'[Previous]);
0;
'Table'[Revenue]/'Table'[Previous]-1)
除了将输出显示为“百分比列”之外,请转到表格的“特殊列”,在本例中为“输出”,并使其成为百分比,在下面的屏幕快照中作为参考