Excel Avanzado

Macros, Vba en Excel y muchos ejemplos de nuestro Curso de Excel Avanzado

Excel Avanzado

Contar textos únicos en Excel

En diversas situaciones necesitamos contar los textos únicos en Excel, es decir  identificar cual es la relación de celdas únicas que se encuentran dentro de un rango. Veamos el siguiente ejemplo y las posibles formas en que puede ser resuelto.

Contar textos %c3%banicos en Excel Contar textos únicos en Excel

 

Contar textos únicos, solución 1

La fórmula mas sencilla que podemos emplear es la siguiente;

=SUMAPRODUCTO(1/CONTAR.SI(B3:B10,B3:B10))

Esta fórmula se ha analizado con anterioridad en el artículo Contar valores únicos en Excel, esta fórmula permite identificar cuantas veces aparece cada elemento y generar una fracción en función de dicho valor, por ejemplo si un valor aparece 3 veces cada vez que aparezca un valor se sumará 1/3 .

Esta fórmula puede ser empleada tanto para textos como para números.

Contar textos únicos, solución 2

En este caso la solución es mucho mas compleja, y para ejemplo mostrado lo que se debería emplear es lo siguiente:

=SUMAPRODUCTO(--(FRECUENCIA(COINCIDIR(B3:B10,B3:B10,0),FILA(B3:B10)-FILA(B3)+1)>0))

Comencemos a analizar: COINCIDIR(B3:B10,B3:B10,0)

Esta función tiene por objetivo identificar la posición en la que aparece cada valor,buscando, de forma que para el ejemplo mostrado los valores que tendríamos serían { 1, 2, 1, 2, 2, 6,1, 6 }

En el caso de FILA(B3:B10)-FILA(B3)+1  también se tendrá una arreglo como resultado de la fórmula, esto permite identificar cada uno de los números de fila restarlos con la fila inicial y sumarle uno , de esta forma generaríamos el arreglo { 1,2, 3, 4, 5, 6, 7, 8}

Luego la función FRECUENCIA tiene como objetivo determinar el número de veces que aparece cada nuevo elemento, si un elemento esta siendo repetido aparecería cero, la lista de valores quedaría de la siguiente forma:

{2,3, 0, 0, 0, 2, 0, 0 }

Luego el la compración ">0" cambia estos valores por una VERDADERO si el valor es mayor  a cero, y FALSO si es cero, la lista quedaría de la siguiente forma {VERDADERO,VERDADERO, FALSO, FALSO, FALSO,  VERDADERO, FALSO, FALSO}

Finalmente el operador "--" permite convertir los VERDADERO en 1 y los FALSO en 0, finalmente por medio de SUMAPRODUCTO se obtiene la suma de todos los 1 obtenidos.

 

 

 

 

 

4 comentarios

  1. como contar una palabra que se repite varias veces en una celda

  2. Buena tarde, quiero hacer lo mismo pero en vba y que el resultado se muestre en un textbox de un userform. me puede ayudar?

  3. Quiero contar en una sola columna, pero varias criterios en la misma columna, ejemplo A B C D E que me cuente la cantidad pero solo las que tienen esas letras no otra

  4. Hola,

    Con relación a este magnífico ejemplo, me gustaría ir más allá y preguntar como sería la formula si además de saber cuantas máquinas (valores únicos) hay, quisiera saber cuantas máquinas hay que tengan la fecha de mantenimiento antes de agosto, por ejemplo.

    Es decir, me interesa meter una condición de otro rango (B), y que con esa condición me cuente los "valores únicos" que quedaría en el rango A.

    Muchas gracias!!!
    Amaia

Deja una respuesta

Los campos requeridos estan marcados con *.