Excel: ¿cómo contar el número de valores distintos en un rango con condición?

Excel: ¿cómo contar el número de valores distintos en un rango con condición?

Leí y probé bastante, pero todavía no puedo encontrar una solución a mi problema.

La solución cercana que encontré es la segunda propuesta en el artículo siguiente: ¿Cómo contar el número de valores distintos en un rango?

Básicamente, busco descubrir cuántos valores son únicos en la columna A, mientras que la columna B corresponde a un valor determinado.

Imaginemos la siguiente hoja de cálculo

COL A      COL B
abc        TRUE
abc        TRUE
bef        TRUE
bef        FALSE
hgf        TRUE
swd        FALSE
rth        FALSE
kjh        TRUE

Me gustaría encontrar una fórmula para calcular (sin mostrar) el número de valores únicos en A que contienen VERDADERO en COL B. Entonces, dado el ejemplo anterior, debería obtener 4.

Ahora, esperaba que la siguiente fórmula fuera útil de alguna manera.

=SUMPRODUCT((A2:A100<>"")/COUNTIF(A2:A100,A2:A100))

una vez modificado con un COUNTIFS, pero claramente no funciona y no entiendo por qué. Además, realmente no entiendo el motivo del bit inicial:A2:A100<>""

Respuesta1

Utilice una tabla dinámica. No se requieren fórmulas. Sólo unos pocos clics.

Arrastre la columna A (llamada "uno" en mi ejemplo) a las etiquetas de las filas, arrastre la columna B (llamada "dos" en mi ejemplo) a las etiquetas de las columnas, arrastre cualquier columna al área de valores y configure el cálculo del valor en "contar". .

Una fila encima de la tabla dinámica, use una función Count() simple para devolver el recuento de únicos:

ingrese la descripción de la imagen aquí

Puede filtrar la tabla dinámica para mostrar solo los elementos con "verdadero" o solo los elementos con "falso".

Respuesta2

Pruebe esta "fórmula matricial"

=SUM(IF(FREQUENCY(IF(B2:B100=TRUE,IF(A2:A100<>"",MATCH(A2:A100,A2:A100,0))),ROW(A2:A100)-ROW(A2)+1),1))

confirmado con CTRL+ SHIFT+ENTER

Respuesta3

Puede utilizar la siguiente fórmula para enumerar los valores de la columna Aque tienen "TRUE"en la columna B.

En Celda, D2ingrese esta fórmula matricial con CTRL+ SHIFT+ ENTERy arrástrela hacia abajo para mostrar todos los únicos que cumplen la condición...

=INDEX($A$2:$A$9, MATCH(0, COUNTIF($D$1:D1,$A$2:$A$9)+IF($B$2:$B$9<>TRUE, 1, 0), 0))

Editar* Se agregó una foto. ingrese la descripción de la imagen aquí

información relacionada