Powerpivot 2016测量使用DAX来排列数组

我想总结一行的7个前面的值,就像这样:

| Wk_number | Value A | Measure | Array | ------------------------------------------- | 01 | 1 | N/A# | N/A# | | 02 | 1 | 1 | {01} | | 03 | 10 | 2 | {01-02} | | 04 | 3 | 12 | {01-03} | | 05 | 5 | 15 | {01-04} | | 06 | 10 | 20 | {01-05} | | 07 | 1 | 30 | {01-06} | | 08 | 4 | 31 | {01-07} | | 09 | -10 | 34 | {02-08} | | 10 | 3 | 26 | {03-09} | | 11 | 2 | 18 | {04-10} | etc... 

我添加了数组列,只是为了澄清这个例子是如何构成的,请注意,从wk09开始,这不仅仅是一个总计。

如何使用DAX语句执行此操作?

两种方法可以这样做:您可以创build计算列或度量值。

对于列:

 =CALCULATE(SUM([Value A]),FILTER(Table,Table[Wk_number]<EARLIER(Table[Wk_number]) && Table[Wk_number] >= (EARLIER(Table[Wk_number])-7))) 

对于度量来说,这是一个非常相似的公式,而不是使用EARLIER(),我们使用MAX():

 =CALCULATE(SUM([Value A]),FILTER(ALL(Table3),Table3[Wk_number]<MAX(Table3[Wk_number]) && Table3[Wk_number] >= (MAX(Table3[Wk_number])-7))) 

以下是结果的截图。 您的示例表中的一些数字似乎是基于mathclosures的:

在这里输入图像说明