Tengo una fórmula que genera un resultado de matriz 2D. Por ejemplo:
{=ROW(4:6)^TRANSPOSE(ROW(1:3))}
(Excel agrega los corchetes al presionar CTRL+ SHIFT+ ENTER )
Necesito sumar solo los elementos horizontales de la matriz (luego determinaré el máximo de estas sumas).
Si lo intento:
{=SUM(ROW(4:6)^TRANSPOSE(ROW(1:3)))}
Obtengo la suma total, pero lo que necesito es una fórmula de matriz que genere un resultado de matriz que contenga una columna (vertical) de la suma de cada fila. Me imagino algo como:
{=HORIZONTALSUM(ROW(4:6)^TRANSPOSE(ROW(1:3)))}
Lo cual, en mi ejemplo simple, contendría una matriz vertical de (24; 30; 36) Entonces podría obtener el máximo fácilmente con:
{=MAX(HORIZONTALSUM(ROW(4:6)^TRANSPOSE(ROW(1:3))))}
Y devuelve 36 como en mi caso de ejemplo.
Me doy cuenta de que podría escribir un UDF para hacer esto fácilmente, pero los UDF no son lo suficientemente portátiles, así que estoy buscando una solución nativa.
fuente
Post-multiplica tu matriz por una columna-vector de unos:
donde themat es una referencia con nombre para su matriz.
Punta de sombrero para:
https://stackoverflow.com/questions/50565859/sum-rows-or-columns-of-a-2d-matrix-into-a-1d-array-in-an-excel-formula
PD: el ejemplo dado en la pregunta no se ejecuta en Excel.
PPS: esencialmente la misma solución se dio en una respuesta anterior, aunque su esencia se enterró en un intento de aclarar la entrada del OP.
fuente