Glenn Arens
Glenn Arens

Reputation: 15

Arrayformula sum one column until this row

I'm trying to make an array formula which sums up all the rows until this row. For clarification column a will be the input and column b would be the output. I'm looking for a way to do this with an arrayformula.


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

I tried to use
=ARRAYFORMULA(SUM(INDIRECT("F1:"&ADDRESS(ROW(),COLUMN(F2:F))))) but this doesn't work.

Upvotes: 0

Views: 1933

Answers (2)

Tom Sharpe
Tom Sharpe

Reputation: 34180

How about

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

enter image description here

The sumif is evaluated separately for each value in the criteria part so:

In the first row of the output array you have

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

giving you just the first row of column A.

In the second row of the output array you have

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

giving you the sum of the first 2 rows and so on.

Upvotes: 5

TheMaster
TheMaster

Reputation: 50383

Since OP changed the question with a clarification, A different answer is submitted below:

B1:

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

Upvotes: 1

Related Questions