¿Cómo usar ARRAYFORMULA y SUM juntos para obtener una columna con la suma de las columnas anteriores?

11

En Google Sheets, tengo los siguientes datos:

    |   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)  |

¿Cómo puedo crear la TOTALScolumna usando ARRAYFORMULA?

ARRAYFORMULA(SUM(A1:C99)) dará un solo número, la suma de todas las celdas, eso no es lo que quiero.

Israel Dov
fuente

Respuestas:

8

Use la siguiente fórmula para hacer eso.

Fórmula

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

Explicado

El ARRAYFORMULAestá destinado a devolver el rango completo, según lo establecido por la COLUMNfórmula. El ^0 (power of zero)siempre devolverá 1. Por lo tanto, cada resultado se multiplica por 1 (arrojando el mismo valor) y se suma.

Ejemplo

He creado un archivo de ejemplo para usted: SUMA SOBRE FILAS

Jacob Jan Tuinstra
fuente
2
@ IsraelDov, recuerde marcar la respuesta como aceptada si era lo que estaba buscando.
Alex
Esta es una respuesta notable.
Michael Litvin
¿Alguna idea sobre cómo hacer que funcione con celdas en blanco? (para ser tratado como 0)
Michael Litvin
2
@MichaelLitvin: intente esto: =ARRAYFORMULA(SUMIF(IF(COLUMN(B1:E1),ROW(B2:E4)),ROW(B2:E4),B2:E4)). ht a @AdamL.
Jacob Jan Tuinstra el
Para manejar vacío, una opción es usar en indirectlugar de rango. En mi caso, usé estoindirect("e3:y"&max(arrayformula((index(E3:Y,0,0)<>"")*row(E3:Y))))
BrunoLM
2

¿Qué hay de sumar manualmente las columnas:

=arrayformula(A:A + B:B + C:C)
skube
fuente
No puedo estar seguro de que el póster significaba Nun marcador de posición para un número desconocido de columnas o si el póster realmente significaba la columna N. Si el número de columnas no se puede determinar con anticipación, entonces nombrar explícitamente cada una de las columnas en las fórmulas no es una opción.
Kevin Li el