La función SUMAPRODUCTO es una de las funciones más versátiles y potentes de Microsoft Excel. En su forma más básica, multiplica los componentes correspondientes de las matrices o rangos proporcionados y devuelve la suma de esos productos. Sin embargo, su verdadero poder reside en su capacidad para realizar cálculos condicionales complejos (sumas, recuentos, promedios) que normalmente requerirían funciones de matriz o funciones específicas como SUMAR.SI.CONJUNTO, todo en una sola fórmula y sin necesidad de pulsar Ctrl+Mayús+Entrar.
Es especialmente útil para crear informes y resúmenes de datos donde se deben cumplir múltiples criterios.
Sintaxis
=SUMAPRODUCTO(matriz1; [matriz2]; [matriz3]; ...)
La función SUMAPRODUCTO tiene los siguientes argumentos:
- matriz1 Es el primer argumento de matriz cuyos componentes se desean multiplicar y luego sumar. Obligatorio.
- [matriz2], [matriz3], … Son de 2 a 255 argumentos de matriz opcionales cuyos componentes se desean multiplicar y luego sumar. Opcional.
Importante: Todos los argumentos de matriz deben tener las mismas dimensiones (igual número de filas y columnas). De lo contrario, SUMAPRODUCTO devolverá el error #¡VALOR!.
Ejemplos
Ejemplo 1: Uso básico para calcular un total de ventas
Imagina que tienes una lista de productos con su precio unitario y la cantidad vendida. Quieres calcular el ingreso total sin necesidad de una columna auxiliar que multiplique el precio por la cantidad para cada fila.
| A | B | C | |
|---|---|---|---|
| 1 | Producto | Precio Unitario | Cantidad Vendida |
| 2 | Monitor | 150 | 10 |
| 3 | Teclado | 25 | 30 |
| 4 | Ratón | 15 | 50 |
=SUMAPRODUCTO(B2:B4; C2:C4)
Resultado esperado: 3000
Excel realiza internamente las siguientes operaciones: (150 * 10) + (25 * 30) + (15 * 50) = 1500 + 750 + 750 = 3000.
Ejemplo 2: Suma condicional (Alternativa a SUMAR.SI.CONJUNTO)
Ahora, vamos a calcular el total de ventas únicamente para una región específica y para un producto determinado. Usaremos la misma lógica de multiplicación, pero con condiciones.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Región | Producto | Precio | Cantidad |
| 2 | Norte | Monitor | 150 | 10 |
| 3 | Sur | Teclado | 25 | 30 |
| 4 | Norte | Monitor | 155 | 5 |
| 5 | Oeste | Ratón | 15 | 50 |
Para calcular el total de ingresos por la venta de «Monitor» en la región «Norte»:
=SUMAPRODUCTO((A2:A5="Norte") * (B2:B5="Monitor") * C2:C5 * D2:D5)
Resultado esperado: 2275
En esta fórmula, `(A2:A5=»Norte»)` devuelve una matriz de valores VERDADERO/FALSO. Al multiplicarlos, Excel los convierte a 1/0. La fórmula multiplica elemento por elemento: `(1*1*150*10) + (0*0*25*30) + (1*1*155*5) + (0*0*15*50)` = 1500 + 0 + 775 + 0 = 2275.
Ejemplo 3: Conteo condicional (Alternativa a CONTAR.SI.CONJUNTO)
Usando la misma tabla, podemos contar cuántas ventas de «Monitor» superaron las 8 unidades en la región «Norte».
=SUMAPRODUCTO(--(A2:A5="Norte"); --(B2:B5="Monitor"); --(D2:D5>8))
Resultado esperado: 1
Aquí, usamos el doble operador unario (`–`) para convertir explícitamente los valores lógicos VERDADERO/FALSO en 1/0. La fórmula evalúa las tres condiciones fila por fila y suma los resultados. Solo la primera fila (fila 2 del ejemplo) cumple las tres condiciones, resultando en un conteo de 1.
Observaciones
– Las matrices de argumentos deben tener las mismas dimensiones. Si no es así, la función devolverá el error `#¡VALOR!`.
– Los valores no numéricos en las matrices se tratan como si fueran cero.
– El uso de `*` o `–` es crucial cuando se usa SUMAPRODUCTO para lógica condicional, ya que convierte los resultados lógicos (VERDADERO/FALSO) en valores numéricos (1/0) que pueden ser usados en el cálculo.
Errores comunes
- #¡VALOR! Ocurre si los rangos o matrices proporcionados como argumentos no tienen exactamente el mismo número de filas y columnas.
Disponibilidad por versión de Excel
La función SUMAPRODUCTO está disponible en todas las versiones modernas de Microsoft Excel, incluyendo: Excel para Microsoft 365, Excel 2021, Excel 2019, Excel 2016, Excel 2013, Excel 2010 y Excel 2007. Su comportamiento fundamental no ha cambiado.
Compatibilidad
| Software | Compatibilidad | Notas |
|---|---|---|
| Microsoft Excel | ✔️ | |
| Google Sheets | ✔️ | Funciona de manera idéntica a la versión de Excel. |
| LibreOffice Calc | ✔️ | Funciona de manera idéntica a la versión de Excel. |
| OpenOffice Calc | ✔️ | Funciona de manera idéntica a la versión de Excel. |
| WPS Office Spreadsheets | ✔️ | Funciona de manera idéntica a la versión de Excel. |
| Apple Numbers | ✔️ | Funciona de manera idéntica a la versión de Excel. |
Funciones Relacionadas
- SUMAR.SI.CONJUNTO Suma las celdas que cumplen un determinado conjunto de condiciones o criterios. Es a menudo una alternativa más directa y legible para sumas condicionales.
- CONTAR.SI.CONJUNTO Cuenta el número de celdas que cumplen un determinado conjunto de condiciones o criterios.
- SUMA Suma todos los números en un rango de celdas.
- SUMAX2MASY2 Devuelve la suma de la suma de los cuadrados de los valores correspondientes en dos matrices.
