在excel(DAX)中查找与当前行的值相关的行

JSh*_*may 2 excel excel-formula powerpivot

有没有办法根据当前行的值使用DAX过滤行(我正在使用电源枢轴)?

换句话说,如果我有一个表"progress",其中'ID'在每行中递增,并且'Percentage'列和另一个表包含

我想创建一个名为old percentage =的百分比(progress [ID] -1)

这在excel中是否可行?

我在这里找不到任何直截了当的命令,如果有的话,请原谅我,我还是新的力量支点.

我这样做的方法可能是创建一个新列旧ID =进度[ID] -1然后在power pivot中创建一个新表,它是当前表的副本,但后来我用旧ID而不是当前ID链接它.然后最后我做了一个旧的百分比列=相关([百分比]);

这是解决问题的有效方法吗?这可以进一步优化吗?

谢谢.

编辑:我添加了一个图像,以帮助显示我需要的内容

计算增加百分比)

Pet*_*lik 9

JShmay,

如果使用SUMX函数EARLIER的组合,解决方案可以更简单.

只需使用以下公式添加新的计算列:

=SUMX (
    FILTER ( Progress, EARLIER ( [ID] ) = [ID] + 1 ),
    Progress[PERCENTAGE]
)
Run Code Online (Sandbox Code Playgroud)

EARLIER返回当前行,因此如果将其与前一行进行比较,则可以返回正确的值.这种方法可能不是很直观,但效率更高,可以节省大量时间.

输出应该如下所示:

在此输入图像描述

尝试四处游戏以达到理想的效果,但我相信这是最简单,最有效的方法(就处理时间而言).

希望这可以帮助.

更新:阅读这篇关于在DAX查询中使用EARLIER的文章.它可能会有所帮助.