根据 Google Sheets 中的名称和值对 D 列进行动态累计计算

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

示例输出

Sample Output

B 栏:姓名 C 栏:借出 D 栏:返回 E 栏:余额

有人可以帮我为 E 列编写一个 GoogleSheets 公式吗?

该公式应根据以下条件动态计算每行的累积结果:

  • B 列同名的连续性。
  • 重置 B 列中新名称的计算。

如果这是 B 列中名称第一次出现,则 E 列计算如下:

Column E = Column C - Column D

对于 B 列中的名称与先前出现的名称匹配的行,E 列计算如下:

Column E = Last 'E' value for the same name + Column C - Column D

当 B 列中出现新名称时,该名称的计算将重置,并且 E 列再次计算如下:

Column E = Column C - Column D

我尝试了各种方法,但没有给出所需的结果

google-sheets google-sheets-formula
1个回答
0
投票

尝试这个公式:

=LET(x, FILTER($B$1:INDIRECT(CONCAT("E",ROW(E2))), $B$1:INDIRECT(CONCAT("B",ROW(E2))) = B2), y, SUM(CHOOSECOLS(x,2)),z,SUM(CHOOSECOLS(x,3)), y-z)

该公式需要向下拖动,但可以在 Byrow 中用于动态溢出。根据您的数据,我假设名称位于 B 栏并相应进行。

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