PowerPivot 中滚动 12 个月的总和
Rolling 12 Month sum in PowerPivot
在 PowerPivot Excel 2016 中,我编写了一个滚动 12 个月销售额总和的公式,如下所示:
Rolling Sum:=CALCULATE (
[Sales] ,
DATESBETWEEN (
Sales[Date],
FIRSTDATE(DATEADD(Sales[Date],-365,DAY)),
LASTDATE (Sales[Date] )
)
)
但它似乎无法正常工作。每个月它只显示当月的销售额!
有人知道我该如何解决我的问题吗?!
提前致谢
如果您没有 Date/Calendar table you can't use Time Intelligence functions 正确。
尽管最佳做法是 Calendar/Date table 并使用时间智能函数,但您可以通过使用显式过滤器获得所需的结果:
Rolling Sum :=
CALCULATE (
[Sales],
FILTER (
ALL ( Sales ),
[Date]
>= MAX ( Sales[Date] ) - 365
&& [Date] <= MAX ( Sales[Date] )
)
)
如果有帮助请告诉我。
使用固定的 365 天不能正确考虑闰日。在以下代码中,“[CurDatePerCalendar]”度量值包含要计算平均值的日期。
Sales TTM =
VAR base = [CurDatePerCalendar]
VAR StartDate = EDATE(base,-12) + 1
VAR EndDate = base
RETURN
CALCULATE(
[SalesSum],
FILTER ( _Calendar,
_Calendar[Date] >= StartDate
&&
_Calendar[Date] <= EndDate )
)
在 PowerPivot Excel 2016 中,我编写了一个滚动 12 个月销售额总和的公式,如下所示:
Rolling Sum:=CALCULATE (
[Sales] ,
DATESBETWEEN (
Sales[Date],
FIRSTDATE(DATEADD(Sales[Date],-365,DAY)),
LASTDATE (Sales[Date] )
)
)
但它似乎无法正常工作。每个月它只显示当月的销售额! 有人知道我该如何解决我的问题吗?!
提前致谢
如果您没有 Date/Calendar table you can't use Time Intelligence functions 正确。
尽管最佳做法是 Calendar/Date table 并使用时间智能函数,但您可以通过使用显式过滤器获得所需的结果:
Rolling Sum :=
CALCULATE (
[Sales],
FILTER (
ALL ( Sales ),
[Date]
>= MAX ( Sales[Date] ) - 365
&& [Date] <= MAX ( Sales[Date] )
)
)
如果有帮助请告诉我。
使用固定的 365 天不能正确考虑闰日。在以下代码中,“[CurDatePerCalendar]”度量值包含要计算平均值的日期。
Sales TTM =
VAR base = [CurDatePerCalendar]
VAR StartDate = EDATE(base,-12) + 1
VAR EndDate = base
RETURN
CALCULATE(
[SalesSum],
FILTER ( _Calendar,
_Calendar[Date] >= StartDate
&&
_Calendar[Date] <= EndDate )
)