【发布时间】:2020-01-19 16:20:58
【问题描述】:
我有以下任务要解决,但我无法解决它。
不同年份有几个数字。我想在 J 列中计算所有列的总和(= 范围 C:I)。我可以在 J 的每个单元格中使用公式来做到这一点 - 但是我需要在 J2 中使用单个数组公式来实现它。
经过大量研究,我发现有两个步骤:
- 用 0 替换空单元格,因为数组公式显然对空单元格有一些问题
- 对每一行求和
对于第 1 步,公式是:=ARRAYFORMULA(IF(ISBLANK(C2:I15),0,C2:I15)),它会返回一个临时数组,例如:
由于这是一个 15x7 数组,我需要一个 7x1 数组之类的东西来乘以得到一个 15x1 数组。
该公式将是:=ARRAYFORMULA(TRANSPOSE(COLUMN(C1:I1)^0))
所以最后我的公式到目前为止看起来像:=ARRAYFORMULA(MMULT(IF(ISBLANK(C2:I15),0,C2:I15),TRANSPOSE(COLUMN(C1:I1)^0)))
这会产生一个 15x1 的数组,它给我每行的总和,但不是所有行的总运行总和。
这是我卡住的地方 - 非常感谢任何帮助和想法。
编辑:添加了一个共享版本供您使用:https://docs.google.com/spreadsheets/d/1cqNEsWHqBaHdDrMY8x4DUKpEkYprRZ8AibEe7d0knPY/edit?usp=sharing
【问题讨论】:
-
因此您希望对 C:I 范围的每一列执行运行总计,然后将每一行汇总为一列 OR 您希望对范围 C 中的每一行求和:我然后执行运行总计以结束一列???
-
我想达到 C:I 范围内的总和(见第一个屏幕截图)。所以每一行的运行总数应该增加。我添加了一个共享工作表。
标签: google-sheets google-sheets-formula array-formulas cumulative-sum