Fórmula de Excel: contar filas con al menos n valores coincidentes -

Tabla de contenido

Fórmula genérica

(=SUM(--(MMULT(--(criteria),TRANSPOSE(COLUMN(data)^0))>=N)))

Resumen

Para contar filas que contienen valores específicos, puede utilizar una fórmula de matriz basada en las funciones MMULT, TRANSPOSE, COLUMN y SUM. En el ejemplo que se muestra, la fórmula en K6 es:

(=SUM(--(MMULT(--((data)=2)))

donde los datos son el rango con nombre C5: I14.

Tenga en cuenta que esta es una fórmula de matriz y debe ingresarse con control shift enter.

Explicación

Trabajando desde adentro hacia afuera, los criterios lógicos usados ​​en esta fórmula son:

(data)<70

donde los datos son el rango con nombre C5: I14. Esto genera un resultado VERDADERO / FALSO para cada valor en los datos, y el doble negativo coacciona los valores VERDADERO FALSO a 1 y 0 para producir una matriz como esta:

(0,0,0,1,0,1,0;0,0,0,0,0,0,0;0,0,0,0,0,0,0;0,1,1,0,0,1,0;0,0,0,0,0,0,0;0,0,0,0,0,0,0;0,0,0,0,0,0,0;0,1,0,0,0,0,0;0,0,0,0,0,0,0;0,0,0,0,0,0,0)

Como los datos originales, esta matriz tiene 10 filas por 7 columnas (10 x 7) y entra en la función MMULT como matriz1 . El siguiente argumento, array2 se crea con:

TRANSPOSE(COLUMN(data)^0))

Aquí, la función COLUMNA se usa como una forma de generar una matriz numérica del tamaño correcto, ya que la multiplicación de matrices requiere que el recuento de columnas en matriz1 (7) sea igual al recuento de filas en matriz2 .

La función COLUMNA devuelve la matriz de 7 columnas (3,4,5,6,7,8,9). Al elevar esta matriz a una potencia de cero, terminamos con una matriz de 7 x 1 como (1,1,1,1,1,1,1), que TRANSPOSE cambia a una matriz de 1 x 7 como (1; 1 ; 1; 1; 1; 1; 1).

Luego, MMULT se ejecuta y devuelve un resultado de matriz de 10 x 1 (2; 0; 0; 3; 0; 0; 0; 1; 0; 0), que se procesa con la expresión lógica> = 2, lo que da como resultado una matriz de VERDADERO Valores FALSOS:

(VERDADERO; FALSO; FALSO; VERDADERO; FALSO; FALSO; FALSO; FALSO; FALSO; FALSO).

Nuevamente coaccionamos TRUE FALSE a 1 y 0 con un doble negativo para obtener una matriz final dentro de SUM:

=SUM((1;0;0;1;0;0;0;0;0;0))

Lo que devuelve correctamente 2, el número de nombres con al menos 2 puntuaciones por debajo de 70.

Buenos enlaces

Contar filas donde se cumple la condición en al menos una columna (excelxor)

Articulos interesantes...