【问题标题】:Arrayformula sum one column until this rowArrayformula 对一列求和,直到这一行
【发布时间】:2018-02-19 22:04:48
【问题描述】:

我正在尝试创建一个数组公式,它将所有行相加,直到这一行。 为了澄清,a列将是输入,b列将是输出。我正在寻找一种使用数组公式的方法。


a1:1 b1:1
a2:2 b2:3
a3:5 b3:8
a4:3 b4:11

我尝试使用
=ARRAYFORMULA(SUM(INDIRECT("F1:"&ADDRESS(ROW(),COLUMN(F2:F))))) 但这不起作用。

【问题讨论】:

  • 您期望的输入和输出是什么?
  • 抱歉,如果不清楚。第一列是输入,第二列是预期的输出

标签: google-sheets sum array-formulas


【解决方案1】:

怎么样

=arrayformula(sumif(row(A1:A4),"<="&row(A1:A4),A1:A4))

sumif 对条件部分中的每个值分别进行评估,因此:

在你拥有的输出数组的第一行

=sumif(row(A1:A4),"<=1",A1:A4)

只给你 A 列的第一行。

在你拥有的输出数组的第二行

=sumif(row(A1:A4),"<=2",A1:A4)

给你前 2 行的总和,依此类推。

【讨论】:

    【解决方案2】:

    由于OP通过澄清更改了问题,因此在下面提交了不同的答案:

    B1:

      =ARRAYFORMULA(MMULT(transpose(A1:A5)*--IF(row(1:5),COLUMN(A:E)<=row(1:5)),ROW(1:5)^0))
    

    【讨论】:

    • 哇,看起来真的很复杂。但它确实有效。今晚要和它一起玩。非常感谢您的所有帮助:)
    猜你喜欢
    • 2015-08-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-17
    • 2021-08-12
    相关资源
    最近更新 更多