Cómo utilizar la función SUMPRODUCTO de Excel -

Tabla de contenido

Resumen

La función SUMPRODUCTO multiplica rangos o matrices y devuelve la suma de productos. Esto suena aburrido, pero SUMPRODUCT es una función increíblemente versátil que se puede usar para contar y sumar como COUNTIFS o SUMIFS, pero con más flexibilidad. Otras funciones se pueden utilizar fácilmente dentro de SUMPRODUCT para ampliar la funcionalidad aún más.

Propósito

Multiplica, luego suma matrices

Valor devuelto

El resultado de matrices sumadas y multiplicadas

Sintaxis

= SUMPRODUCTO (matriz1, (matriz2),…)

Argumentos

  • array1 : la primera matriz o rango para multiplicar y luego sumar.
  • array2 - (opcional) La segunda matriz o rango para multiplicar, luego sumar.

Versión

Excel 2003

Notas de uso

La función SUMPRODUCT funciona con matrices, pero no requiere la sintaxis de matriz normal (Ctrl + Shift + Enter) para ingresar. El propósito de la función SUMPRODUCTO es multiplicar y luego sumar matrices. Si solo se proporciona una matriz, SUMPRODUCT simplemente sumará los elementos de la matriz. Se pueden suministrar hasta 30 matrices.

Cuando se encuentra por primera vez con SUMPRODUCT, puede parecer aburrido, complejo e incluso inútil. Pero SUMPRODUCT es una función increíblemente versátil con muchos usos. Debido a que manejará matrices con elegancia y sin quejas, puede usarlo para procesar rangos de celdas de formas inteligentes y elegantes (consulte los enlaces a ejemplos de fórmulas en esta página).

Para ilustrar cómo funciona SUMPRODUCT, aquí hay algunos ejemplos comunes.

SUMPRODUCT para sumas y recuentos condicionales

Suponga que tiene algunos datos de pedido en A2: B6, con Estado en la columna A, Ventas en la columna B:

UN segundo
1 Estado Ventas
2 Utah 75
3 CO 100
4 TX 125
5 CO 125
6 TX 150

Con SUMPRODUCT, puede contar las ventas totales de Texas ("TX") con esta fórmula:

=SUMPRODUCT(--(A2:A6="TX"))

Y puede sumar las ventas totales de Texas ("TX") con esta fórmula:

=SUMPRODUCT(--(A2:A6="TX"),B2:B6)

Nota: No se confunda con el doble negativo. Este es un truco común que se usa en fórmulas de Excel más avanzadas para convertir los valores VERDADERO y FALSO en 1 y 0. Ver más a continuación …

Para el ejemplo de suma anterior, aquí hay una representación virtual de las dos matrices procesadas por primera vez por SUMPRODUCT:

array1 array2
FALSO 75
FALSO 100
CIERTO 125
FALSO 125
CIERTO 150

Cada matriz tiene 5 elementos. La primera matriz contiene los valores VERDADERO / FALSO que resultan de la expresión A2: A6 = "TX", y la segunda matriz es el contenido de B2: B6. Cada elemento de la primera matriz se multiplicará por el elemento correspondiente de la segunda matriz. Sin embargo, en el estado actual, el resultado de SUMPRODUCT será cero porque los valores TRUE y FALSE se tratarán como cero. Necesitamos que los elementos de la matriz1 sean numéricos; deben ser "forzados" a unos y ceros. Aquí es donde entra el doble negativo.

Al usar el doble negativo - (doble unario, para sus tipos técnicos) podemos coaccionar el VERDADERO / FALSO en los valores numéricos uno y cero, como se muestra en la representación virtual a continuación. La última columna "Producto" representa el resultado de multiplicar las dos matrices. El resultado sumado, 275, es el valor que devuelve SUMPRODUCTO.

array1 array2 Producto
0 * 75 = 0
0 * 100 = 0
1 * 125 = 125
0 * 125 = 0
1 * 150 = 150
Suma 275

Usando la sintaxis de llaves para arreglos, el ejemplo se ve así después de la coerción:

=SUMPRODUCT((0,0,1,0,1),(75,100,125,125,150))

y así después de la multiplicación:

=SUMPRODUCT((0,0,125,0,150))

Este ejemplo amplía las ideas anteriores con más detalle.

SUMPRODUCT con otras funciones

SUMPRODUCT puede utilizar otras funciones directamente. Es posible que vea SUMPRODUCT usado con la función LEN para contar el total de caracteres en un rango, o con funciones como ISBLANK, ISTEXT, etc. Estas no son normalmente funciones de matriz, pero cuando se les da un rango, crean una "matriz de resultado". Debido a que SUMPRODUCT está diseñado para trabajar con matrices, puede realizar cálculos en las matrices directamente. Esta puede ser una buena forma de ahorrar espacio en una hoja de trabajo, al eliminar la necesidad de una columna de "ayuda".

Por ejemplo, suponga que tiene 10 valores de texto diferentes en A1: A10 y desea contar el total de caracteres para los 10 valores. Puede agregar una columna auxiliar en la columna B que use esta fórmula: LEN (A1) para calcular los caracteres en cada celda. Luego, puede usar SUM para sumar los 10 números. Sin embargo, usando SUMPRODUCT, puede escribir una fórmula como esta:

=SUMPRODUCT(LEN(A1:A10))

Cuando se usa con un rango como A1: A10, LEN devolverá una matriz de 10 valores. Entonces SUMPRODUCT simplemente sumará todos los valores y devolverá el resultado, sin necesidad de una columna auxiliar.

Vea ejemplos a continuación, muchas otras formas de usar SUMPRODUCT.

Notas:

  1. SUMPRODUCT trata los elementos no numéricos en matrices como ceros.
  2. Los argumentos de la matriz deben tener el mismo tamaño. De lo contrario, SUMPRODUCT generará un #VALUE! valor de error.
  3. Las pruebas lógicas dentro de las matrices crearán valores VERDADERO y FALSO. En la mayoría de los casos, querrá forzarlos a unos y ceros.
  4. SUMPRODUCT a menudo puede usar el resultado de otras funciones directamente (vea los ejemplos de fórmulas a continuación)

Articulos interesantes...