Powerpivot:年初至今年与去年同期相比

时间:2015-07-10 12:51:34

标签: powerpivot dax

我正在使用excel 2013 powerpivot,我已将其链接到sql查询。在此查询中,我拥有前几年的所有销售数据,并使用当前销售进行更新。与去年同期相比,我想制作今年迄今为止的年度销售额。例如,2015年1月1日至2015年7月10日与2014年1月1日至2014年7月10日相比。 我将销售数据表与日历表相关联。但无论我尝试什么,parallelperiod,sameperiodlastyear,totalytd,它总能告诉我今年的正确数据,但去年的全年销售额。任何人都可以推荐我尝试一下吗?

感谢,

2 个答案:

答案 0 :(得分:0)

TOTALYTD(和其他时间智能功能)将在你给它的任何环境中寻找最高日期,所以当你试图告诉它从现在起12个月后它会认为“好的,我在2014年”我将从2014年获得所有数据并计算出TOTALYTD。所以你必须忽略内置函数并构建自己的函数:

  =CALCULATE(sum(Table1[sales]),DATESBETWEEN(DateDim[Date], FIRSTDATE(DATEADD(DateDim[Date],-12,MONTH)), LASTDATE(DATEADD(Table1[Date],-12,MONTH))))

只要你的桌子上有一个切片机或一个领域就可以拿到一年,那么这应该有效。

编辑:经过数据样本的测试,DAX再次尝试过于聪明,因为我告诉它要回到12个月,它假设我想要从月份背景中包含所有数据,包括去年7月的所有数据。 回到365天就可以解决这个问题(只要闰年不是问题)。

  =CALCULATE(sum(Table1[sales]),DATESBETWEEN(DateDim[Date], FIRSTDATE(DATEADD(DateDim[Date],-12,MONTH)), LASTDATE(DATEADD(Table1[Date],-365,DAY))))

答案 1 :(得分:0)

我已经尝试过了,但它还没有给我正确答案。让我告诉你我现在的情况。

对于本年度销售,我有以下Dax公式

=TOTALYTD(sum(Omzetgegevens[NettoOmzet]); Kalender[Calender date])

对于去年的销售,我有:

=CALCULATE((SUM(Omzetgegevens[NettoOmzet])); SAMEPERIODLASTYEAR(DATESYTD(Kalender[Calender date])))

为了测试你的解决方案,我打电话给#34;测试ytd":

=CALCULATE(SUM(Omzetgegevens[NettoOmzet]); DATESBETWEEN(Kalender[Calender date]; FIRSTDATE(DATEADD(Kalender[Calender date];-12; MONTH)); LASTDATE(DATEADD(Kalender[Calender date]; -365; DAY))))

如果我现在运行pivottable,我得到的结果是:

    2015        
    current year ytd    last year ytd   test ytd
januari          28.912          34.487         34.487
februari     50.301          66.003         31.516
maart            73.362          92.647         26.644
april            99.561          117.853    25.205
mei         128.021          149.108    31.255
juni            149.706          174.076    24.968
juli            158.297          205.438    31.362
augustus    158.297          231.693    26.255
september   158.297          254.534    22.841
oktober         158.297          282.484    27.951
november    158.297          303.808    21.324
december    158.297          313.208      9.400
Total   158.297          313.208    313.208

我希望看到以下内容。由于本报告于2015年7月14日开始运行。我希望看到2015年之前的所有销售情况以及2014年的所有销售情况,直到2014年7月14日。

如果无法看到月份,我也很好,只有当前年初和去年的总数

2015        
    current year ytd    last year ytd   
januari          28.912          34.487         
februari     50.301          66.003         
maart            73.362          92.647         
april            99.561          117.853    
mei         128.021          149.108    
juni            149.706          174.076    
juli            158.297          175.312(so not full month of july in 2014)
Total           158.297          175.312