如何在不将中间结果存储在辅助列中的情况下跨行汇总复杂的数组公式?

How to sum up complex array formula across rows without storing intermediate results in helper column?

我有一些“复杂”的计算,我目前正在逐行计算并存储在辅助列中。最后我简单地在辅助列上 运行 一个 sum 来计算该计算的总值。

我只想拥有一个字段,用于计算总价值 - 不需要辅助列。

具体来说,我计算的是运动负荷(XL):http://www.strongur.io/monitoring-training-stress-with-exertion-load/

作为输入数据,我得到了一个举重运动员、执行的重复次数以及在达到力竭 (RIR) 之前在罐中重复了多少次。我通过将执行的次数扩展到一个范围来计算一组的 XL => 3 次重复变为 [1,2,3],然后 运行 在该范围内设置 ArrayFormula 以计算力竭距离从那个代表的角度来看(代表 1 比代表 3 更远离失败),因此那个单一代表的 XL。然后我使用 sum 来计算给定组的总运动负荷。

不幸的是,这种方法不能扩展到“单一字段”解决方案——因为我不能在它周围添加另一个 ArrayFormula。我不确定从这里去哪里 - 我的电子表格经验有限。

我认为从概念的角度来看我在这里遗漏了一些东西——我一直在谷歌搜索并看到提到的矩阵,这对这类事情来说是正确的方向吗?我想避免只为这个用例编写一个 JavaScript 函数。

提前感谢任何tips/pointers! :)

此致, 西蒙

示例电子表格:https://docs.google.com/spreadsheets/d/1CNYxsQKo_CUIsstCDbcjoojL6WK46rg9ONybviFxAGs/edit?usp=sharing

使用:

=ARRAYFORMULA(SUM(IF(B2:B="";;IF(COLUMN(1:1)>C2:C;;
 B2:B*EXP(-0,215*(D2:D+C2:C-COLUMN(1:1)))))))