Wie verwende ich ARRAYFORMULA und SUM zusammen, um eine Spalte mit der Summe der vorhergehenden Spalten zu erhalten?

11

In Google Sheets habe ich folgende Daten:

    |   A |  B  |  C  |  ...  | N  | TOTALS       |
  1 |  123|  425|  324|  ...  | 234| =SUM(A1:N1)  |
  2 |  123|  425|  324|  ...  | 234| =SUM(A2:N2)  |
  3 |  123|  425|  324|  ...  | 234| =SUM(A3:N3)  |

Wie kann ich die TOTALSSpalte mit ARRAYFORMULA erstellen?

ARRAYFORMULA(SUM(A1:C99)) wird eine einzige Zahl geben, die Summe aller Zellen - das ist nicht was ich will.

Israel Dov
quelle

Antworten:

8

Verwenden Sie dazu die folgende Formel.

Formel

=MMULT(B2:E4,TRANSPOSE(ARRAYFORMULA(COLUMN(B2:E4)^0)))

Erklärt

Das ARRAYFORMULAsoll den gesamten Bereich zurückgeben, wie durch die COLUMNFormel festgelegt. Der ^0 (power of zero)wird immer 1 zurückgeben. Daher wird jedes Ergebnis mit 1 multipliziert (was den gleichen Wert ergibt) und summiert.

Beispiel

Ich habe eine Beispieldatei für Sie erstellt: SUM OVER ROWS

Jacob Jan Tuinstra
quelle
2
@YisraelDov, denken Sie daran, die Antwort als akzeptiert zu markieren, wenn es das war, wonach Sie gesucht haben.
Alex
Dies ist eine bemerkenswerte Antwort.
Michael Litvin
Irgendeine Idee, wie es mit leeren Zellen funktioniert? (als 0 zu behandeln)
Michael Litvin
2
@ MichaelLitvin: versuchen Sie dies : =ARRAYFORMULA(SUMIF(IF(COLUMN(B1:E1),ROW(B2:E4)),ROW(B2:E4),B2:E4)). ht zu @AdamL.
Jacob Jan Tuinstra
Um leer zu behandeln, besteht eine Option darin, indirectanstelle des Bereichs zu verwenden. In meinem Fall habe ich dies verwendetindirect("e3:y"&max(arrayformula((index(E3:Y,0,0)<>"")*row(E3:Y))))
BrunoLM
2

Wie wäre es mit einem manuellen Summieren der Spalten:

=arrayformula(A:A + B:B + C:C)
Skube
quelle
Ich kann nicht sicher sein, ob das Poster Nals Platzhalter für eine unbekannte Anzahl von Spalten gedacht ist oder ob das Poster wirklich Spalte N bedeutet. Wenn die Anzahl der Spalten nicht im Voraus bestimmt werden kann, ist es nicht so, jede einzelne Spalte in den Formeln explizit zu benennen eine Option.
Kevin Li