在PowerPivot中滚动12个月的总和

时间:2017-01-20 17:43:35

标签: excel date powerpivot dax rolling-sum

在PowerPivot Excel 2016中,我编写了一个滚动12个月销售额的公式,如下所示:

#include <iostream>
using namespace std;
int a=9;
int main()
{
    int a =8;
    cout<<a<<endl;
    cout<<::a;
    return 0;
}

但它似乎无法正常工作。每个月它只显示那个月的销售额! 有谁知道我该如何解决我的问题?!​​

提前致谢

2 个答案:

答案 0 :(得分:0)

如果您没有Date/Calendar表,则无法正常使用Time Intelligence functions

尽管最佳做法是使用日历/日期表并使用时间智能功能,但您可以使用显式过滤器获得所需的结果:

Rolling Sum :=
CALCULATE (
    [Sales],
    FILTER (
        ALL ( Sales ),
        [Date]
            >= MAX ( Sales[Date] ) - 365
            && [Date] <= MAX ( Sales[Date] )
    )
)

如果有帮助,请告诉我。

答案 1 :(得分:0)

使用固定的365天不能正确说明leap日。在下面的代码中,“ [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 )
)