Excel - 创建在特定条件下重置的运行总计

问题描述 投票:0回答:1

如何结合 LAMBDA 和 SCAN 创建一个在 Excel 中特定条件下重置的运行总计?

我正在尝试 Excel 365 中的 LAMBDA 和 SCAN 函数,并希望创建一个公式来计算一列数字的运行总计,但只要满足特定条件(例如,当另一列中的值等于零)。

到目前为止,我已经成功地使用 SCAN 创建了基本的运行总计,但我正在努力弄清楚如何根据条件动态重置运行总计。我想避免使用辅助列,而是使用单个公式。这是我正在尝试的简化版本:

A 列有随机数。 B 列具有标记(0 或 1),其中总数应重置(例如,当 B = 0 时重置)。 有没有办法将运行总逻辑和条件重置集成到单个 LAMBDA + SCAN 公式中?关于如何解决这个问题有什么建议吗?

=SCAN(0, A2:A6, LAMBDA(acc, x, IF(B2:B6=0, 0, acc + x)))
excel excel-formula
1个回答
0
投票

传递ROW号并使用INDEX:

=SCAN(0,ROW(A1:A30),LAMBDA(acc,x,IF(INDEX(B:B,x)=0,0,acc+INDEX(A:A,x))))

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.