我的excel / powerpivot仪表板中有一种情况,我想在其中计算收入漏斗的价值:去年同月。
要做到这一点, ParallelPeriod 功能对我来说非常适合,但是,结果只会显示我今年以及去年的年份切片器中的标记。
例如:要计算4月份仪表板的价值,我还需要对去年同期进行比较。
2015年4月与2014年4月:
SAME MONTH Last Year:=CALCULATE(sum([Rev. wgt (k$)]),PARALLELPERIOD(DimDate[Date],-12,MONTH))
然后我与本月比较:
This Month vs Same Month LY:=((sum([Rev. wgt (k$)])- ([SAME MONTH Last Year])) / [SAME MONTH Last Year])
要计算2014年4月,我使用ParallelPeriod函数。但是为了获得仪表板中的值,我没有其他选择,只能选择年份切片器中的多年组合来获得结果。 (见图片,请)
我想避免使用Year切片器,并希望切片器仅选择当前年份(2015)作为结果。我不希望对2014进行标记,因为它会改变我的其他一些年度观点。
因此,他们是否可以使用几个月或任何其他公式来显示“去年同月”的结果,而不会在年份切片器中标记前一年(2014年)?我想避免使用目标年切片器来返回值。
任何建议,指导都将受到高度赞赏。
答案 0 :(得分:0)
如果您使用的是标准日历,则可以执行以下操作:
Same Period Last Year:=CALCULATE( SUM('FactTable'[Rev. wgt (k$)] ),
SAMEPERIODLASTYEAR( 'Date'[Date] ) )
无论你去年,去年同一季度或去年同月,这都会有效。
Here是一个答案,我提供的去年同期计算略有不同。 可以在http://www.daxpatterns.com/time-patterns/
找到DAX时间比较计算的一个很好的解释我上个月的销售公式是:
Sales Same Month Prior Year:=CALCULATE([Total Sales], Filter(All('Sale Date'),
'Sale Date'[Month Seq] = max('Sale Date'[Month Seq])-12))
我必须使用该公式,因为我的财政日历与正常日历年度不同。 DAX模式链接和我对其他SO问题的回答解释了Month Seq字段。
请注意,无论您在当月的哪个位置,并行期间始终会返回整个期间。这可能是也可能不是期望的行为。来自MSDN:
PARALLELPERIOD功能类似于DATEADD功能,除了 PARALLELPERIOD始终返回给定的完整句点 粒度级别而不是DATEADD返回的部分期间。 例如,如果您选择的日期从6月10日开始 并在同年6月21日结束,你想改变它 选择前进一个月然后PARALLELPERIOD功能将 返回下个月(7月1日至7月31日)的所有日期;但是,如果 改为使用DATEADD,然后结果将只包含日期 7月10日至7月21日。