![](/img/trans.png)
[英]How to use Arrayformula to calculate the average with a double condition
[英]How to use an arrayformula to calculate balance on each line
我有一个包含两列的 Google 表格。 F 列中有一个数值,我希望 G 列包含前一行 G 列的值加上当前行 F 列的值,基本上是一个运行总计。
我正在尝试使用数组公式进行计算,它适用于前几行,但之后 G 列包含与 F 列相同的值。
我使用的公式是:
=arrayformula(F3:F10+G2:G9)
我究竟做错了什么?
一般来说,没有什么不应该使用自己的输出作为输入。 将需要迭代计算,只要有既定的替代方案,就应该避免这条充满陷阱的路径。 在这种情况下,运行总计的常用方法是 MMULT 和一些装饰。
如果您的数据以 F2 开头,请将其放在 G2 中:
=ArrayFormula(IF(F2:F10,
MMULT(
TRANSPOSE((ROW(F2:F10)<=TRANSPOSE(ROW(F2:F10)))*F2:F10),
SIGN(F2:F10)),
IFERROR(1/0)
))
或者,稍微不透明,但能够处理负值:
=ArrayFormula(IF(F2:F10,
MMULT(
TRANSPOSE((ROW(F2:F10)<=TRANSPOSE(ROW(F2:F10)))*F2:F10),
IF({F2:F10}<>0,1,0)),
IFERROR(1/0)
))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.