Fórmula genérica
=SUMAPRODUCTO(--(logical_expression))
Explicación
Para contar filas en una tabla que cumplan criterios internos calculados, sin usar una columna auxiliar, puede usar la función SUMAPRODUCTO.
Contexto
Imagine que tiene una tabla de cifras de ventas para varios productos. Tiene una columna para ventas el mes pasado y una columna para ventas en el mes actual. Desea contar los productos (filas) donde las ventas actuales son menores que las ventas del mes pasado. No puede usar CONTAR.SI para esto, porque CONTAR.SI es una función basada en rango. Una opción es agregar una columna auxiliar que reste las ventas del mes pasado de las ventas de este mes, luego use CONTAR.SI para contar resultados inferiores a cero. Pero, ¿qué sucede si no desea (o no puede) agregar una columna auxiliar? En ese caso, puede usar SUMAPRODUCTO.
En el ejemplo que se muestra, la fórmula en la celda G6 es:
=SUMAPRODUCTO(--(C5:C10>D5:D10))
Cómo funciona esta fórmula
SUMAPRODUCTO está diseñado para trabajar con matrices. Multiplica los elementos correspondientes en dos o más matrices y suma los productos resultantes. Como resultado, puede usar SUMAPRODUCTO para procesar matrices que resultan de criterios aplicados a un rango de celdas. El resultado de tales operaciones serán matrices, que SUMAPRODUCTO puede manejar de forma nativa, sin requerir la sintaxis Control Shift Enter.
En este caso, simplemente comparamos los valores en la columna C con los valores en la columna D usando una expresión lógica:
C5:C10>D5:D10
Como estamos tratando con rangos (matrices), el resultado es una matriz de valores VERDADERO FALSO como este:
{FALSO; VERDADERO; FALSO; VERDADERO; FALSO; FALSO}
Para obligarlos a unos y ceros, utilizamos un operador doble negativo (también llamado doble unario):
--(C5:C10>D5:D10)
Lo que produce una matriz como esta:
{0; 1; 0; 1; 0; 0}
que luego es procesado por SUMAPRODUCTO. Como solo hay una matriz, SUMAPRODUCTO simplemente suma los elementos de la matriz y devuelve un total.
0 comentarios:
Publicar un comentario