【问题标题】:Sum all values in all rows using array formula使用数组公式对所有行中的所有值求和
【发布时间】:2017-09-01 12:35:14
【问题描述】:

我想要一个数组公式来总结每行 G26:AD 列,因为行数是动态的。

=ArrayFormula(sum(G26:26)) 

不起作用。我尝试使用 MMULT,但没有成功:

=MMULT(G26:26,TRANSPOSE(ARRAYFORMULA(COLUMN(G26:26)^0)))

还有其他想法吗?

【问题讨论】:

  • 您是否希望将每一行的总和放在该行的一个单元格中,这意味着将 G2:2 的内容相加并将答案放在单元格 F2 和 G3:3 的总和并将其放在F3等?

标签: google-sheets google-sheets-formula array-formulas


【解决方案1】:

按行求和

A:C中每一行的总和:

=arrayformula(mmult(A2:C*1, transpose(A2:C2 * 0 + 1)))

编辑。这个更短:=arrayformula(mmult(A2:C*1, transpose(A2:C2 ^ 0)))


按条件求和

=arrayformula(mmult(A2:C*--(A2:C>0), transpose(A2:C2 ^ 0)))

其他条件:

=arrayformula(mmult(A2:D*1, transpose(A2:D2 ^ 0*iseven(column(A2:D2)))))

【讨论】:

  • 你先生,真是个天才!
  • 如果你提前知道你有多少列,你也可以=mmult(A2:C10, {1;1;1})。这个例子也突出了相当模糊的transpose(A2:C2 * 0 + 1)。所需要做的就是生成一列1 值。
猜你喜欢
  • 2015-09-18
  • 1970-01-01
  • 2016-03-05
  • 2019-07-19
  • 1970-01-01
  • 1970-01-01
  • 2019-04-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多