JSh*_*may 2 excel excel-formula powerpivot
有没有办法根据当前行的值使用DAX过滤行(我正在使用电源枢轴)?
换句话说,如果我有一个表"progress",其中'ID'在每行中递增,并且'Percentage'列和另一个表包含
我想创建一个名为old percentage =的百分比(progress [ID] -1)
这在excel中是否可行?
我在这里找不到任何直截了当的命令,如果有的话,请原谅我,我还是新的力量支点.
我这样做的方法可能是创建一个新列旧ID =进度[ID] -1然后在power pivot中创建一个新表,它是当前表的副本,但后来我用旧ID而不是当前ID链接它.然后最后我做了一个旧的百分比列=相关([百分比]);
这是解决问题的有效方法吗?这可以进一步优化吗?
谢谢.
编辑:我添加了一个图像,以帮助显示我需要的内容
)
JShmay,
如果使用SUMX函数和EARLIER的组合,解决方案可以更简单.
只需使用以下公式添加新的计算列:
=SUMX (
FILTER ( Progress, EARLIER ( [ID] ) = [ID] + 1 ),
Progress[PERCENTAGE]
)
Run Code Online (Sandbox Code Playgroud)
EARLIER返回当前行,因此如果将其与前一行进行比较,则可以返回正确的值.这种方法可能不是很直观,但效率更高,可以节省大量时间.
输出应该如下所示:

尝试四处游戏以达到理想的效果,但我相信这是最简单,最有效的方法(就处理时间而言).
希望这可以帮助.
更新:阅读这篇关于在DAX查询中使用EARLIER的文章.它可能会有所帮助.