martes, 9 de junio de 2020

EXCEL: Sumar columnas y filas coincidentes

Excel formula: Sum matching columns and rows

Fórmula genérica

=SUMAPRODUCTO(data*(range1=criteria1)*(range2=criteria2))

Explicación

Para sumar valores en columnas y filas coincidentes, puede usar la función SUMAPRODUCTO. En el ejemplo que se muestra, la fórmula en J6 es:
=SUMAPRODUCTO(data*(codes=J4)*(days=J5))
donde los datos (C5: C14), los días (B5: B14) y los códigos (C4: G4) son rangos con nombre.

Cómo funciona esta fórmula

La función SUMAPRODUCTO puede manejar matrices de forma nativa, sin requerir control shift enter.
En este caso, estamos multiplicando todos los valores en los datos del rango nombrado por dos expresiones que filtran los valores que no son de interés. La primera expresión aplica un filtro basado en códigos:
(codes=J4)
Como J4 contiene "A002", la expresión crea una matriz de valores VERDADERO FALSO como este:
{FALSO,VERDADERO,FALSO,FALSO,FALSO}
La segunda expresión se filtra el día:
(days=J5)
Como J4 contiene "Wed", la expresión crea una matriz de valores VERDADERO FALSO como este:
{FALSO;FALSO;VERDADERO;FALSO;FALSO;FALSO;FALSO;VERDADERO;FALSO;FALSO}
En Excel, cualquier operación matemática coacciona automáticamente los valores VERDADERO FALSO a los valores 1 y 0, por lo que la operación de multiplicación obliga a las matrices anteriores a unos y ceros, y crea una matriz 2D con las mismas dimensiones que los datos originales. El proceso se puede visualizar como se muestra a continuación:
Array multiplication inside SUMPRODUCT
Finalmente, SUMAPRODUCTO devuelve la suma de todos los elementos en la matriz final, 9.


Comentarios en Facebook


0 comentarios:

Copyright © 2021 TRUJILLOSOFT