Excel: contar celdas que contienen un texto específico (coincidencia exacta y parcial)

  • Compartir Este
Michael Brown

El tutorial muestra cómo contar el número de celdas con cierto texto en Excel. Encontrará ejemplos de fórmulas para celdas de coincidencia exacta, coincidencia parcial y filtradas.

La semana pasada vimos cómo contar celdas con texto en Excel, es decir, todas las celdas con cualquier texto. Al analizar grandes volúmenes de información, es posible que también desee saber cuántas celdas contienen un texto específico. Este tutorial explica cómo hacerlo de forma sencilla.

    Cómo contar celdas con texto específico en Excel

    Microsoft Excel dispone de una función especial para contar celdas de forma condicional, la función COUNTIF. Todo lo que tiene que hacer es proporcionar la cadena de texto de destino en el campo criterios argumento.

    He aquí una fórmula genérica de Excel para contar el número de celdas que contienen un texto específico:

    COUNTIF(rango, " texto ")

    El siguiente ejemplo lo muestra en acción. Supongamos que tienes una lista de IDs de elementos en A2:A10 y quieres contar el número de celdas con un id en particular, digamos "AA-01". Escribe esta cadena en el segundo argumento y obtendrás esta sencilla fórmula:

    =COUNTIF(A2:A10, "AA-01")

    Para que sus usuarios puedan contar celdas con un texto determinado sin necesidad de modificar la fórmula, introduzca el texto en una celda predefinida, por ejemplo D1, y facilite la referencia de la celda:

    =COUNTIF(A2:A10, D1)

    Nota: La función COUNTIF de Excel es distingue entre mayúsculas y minúsculas Para distinguir entre mayúsculas y minúsculas, utilice esta fórmula que distingue entre mayúsculas y minúsculas.

    Cómo contar las celdas con un texto determinado (coincidencia parcial)

    La fórmula del ejemplo anterior coincide exactamente con los criterios. Si hay al menos un carácter diferente en una celda, por ejemplo un espacio extra al final, no será una coincidencia exacta y dicha celda no se contará.

    Para encontrar el número de celdas que contienen un determinado texto como parte de su contenido, utilice caracteres comodín en sus criterios, concretamente un asterisco (*) que representa cualquier secuencia o caracteres. Dependiendo de su objetivo, una fórmula puede tener uno de los siguientes aspectos.

    Contar las celdas que contienen un texto específico en el muy al principio :

    COUNTIF(rango, " texto *")

    Contar celdas que contienen cierto texto en cualquier posición :

    COUNTIF(intervalo, "*") texto *")

    Por ejemplo, para saber cuántas celdas del rango A2:A10 empiezan por "AA", utilice esta fórmula:

    =COUNTIF(A2:A10, "AA*")

    Para obtener el recuento de celdas que contienen "AA" en cualquier posición, utilice esta:

    =COUNTIF(A2:A10, "*AA*")

    Para que las fórmulas sean más dinámicas, sustituya las cadenas codificadas por referencias a celdas.

    Para contar las celdas que empiezan por un texto determinado:

    =COUNTIF(A2:A10, D1& "*")

    Para contar celdas con un texto determinado en cualquier parte de ellas:

    =COUNTIF(A2:A10, "*"&D1&"*")

    La siguiente captura de pantalla muestra los resultados:

    Contar celdas que contienen un texto específico (distingue mayúsculas de minúsculas)

    En situaciones en las que necesite diferenciar mayúsculas de minúsculas, la función COUNTIF no funcionará. Dependiendo de si busca una coincidencia exacta o parcial, tendrá que construir una fórmula diferente.

    Fórmula que distingue entre mayúsculas y minúsculas para contar celdas con un texto específico (coincidencia exacta)

    Para contar el número de celdas con determinado texto reconociendo la caja de texto, utilizaremos una combinación de las funciones SUMPRODUCT y EXACT:

    SUMPRODUCTO(--EXACTO(" texto ", gama ))

    Cómo funciona esta fórmula:

    • EXACT compara cada celda del rango con el texto de muestra y devuelve una matriz de valores TRUE y FALSE, TRUE representa las coincidencias exactas y FALSE el resto de celdas. Un guión doble (denominado doble unario ) convierte VERDADERO y FALSO en 1 y 0.
    • SUMPRODUCT suma todos los elementos de la matriz. Esa suma es el número de 1's, que es el número de coincidencias.

    Por ejemplo, para obtener el número de celdas en A2:A10 que contienen el texto en D1 y manejan mayúsculas y minúsculas como caracteres diferentes, utilice esta fórmula:

    =SUMPRODUCTO(--EXACT(D1, A2:A10))

    Fórmula que distingue mayúsculas de minúsculas para contar celdas con un texto específico (coincidencia parcial)

    Para construir una fórmula que distinga entre mayúsculas y minúsculas y que pueda encontrar una cadena de texto de interés en cualquier lugar de una celda, estamos utilizando 3 funciones diferentes:

    SUMPRODUCTO(--(ISNUMBER(FIND(" texto ", gama ))))

    Cómo funciona esta fórmula:

    • La función FIND, que distingue entre mayúsculas y minúsculas, busca el texto de destino en cada celda del rango. Si tiene éxito, la función devuelve la posición del primer carácter; en caso contrario, el error #¡VALOR! En aras de la claridad, no necesitamos conocer la posición exacta, cualquier número (a diferencia del error) significa que la celda contiene el texto de destino.
    • La función ISNUMBER maneja la matriz de números y errores devueltos por FIND y convierte los números a TRUE y cualquier otra cosa a FALSE. Un unario doble (--) coacciona los valores lógicos en unos y ceros.
    • SUMPRODUCT suma la matriz de 1's y 0's y devuelve el recuento de celdas que contienen el texto especificado como parte de su contenido.

    Para probar la fórmula con datos reales, veamos cuántas celdas de A2:A10 contienen la subcadena introducida en D1:

    =SUMPRODUCTO(--(ISNUMBER(FIND(D1, A2:A10))))

    Y esto devuelve un recuento de 3 (celdas A2, A3 y A6):

    Cómo contar celdas filtradas con texto específico

    Contar elementos visibles en una lista filtrada, tendrá que utilizar una combinación de 4 o más funciones dependiendo de si desea una coincidencia exacta o parcial. Para que los ejemplos sean más fáciles de seguir, echemos primero un vistazo rápido a los datos de origen.

    Suponiendo que tiene una tabla con ID de pedido en la columna B y Cantidad en la columna C como se muestra en la imagen de abajo. Por el momento, usted está interesado sólo en cantidades mayores que 1 y filtró su tabla en consecuencia. La pregunta es - ¿cómo se cuentan las celdas filtradas con un id particular?

    Fórmula para contar celdas filtradas con texto específico (coincidencia exacta)

    Para contar las celdas filtradas cuyo contenido coincide exactamente con la cadena de texto de muestra, utilice una de las siguientes fórmulas:

    =SUMPRODUCTO(SUBTOTAL(103, INDIRECTO("A"&FILA(A2:A10))), --(B2:B10=F1))

    =SUMPRODUCTO(SUBTOTAL(103, OFFSET(A2:A10, FILA(A2:A10) - MIN(FILA(A2:A10)),,1)), --(B2:B10=F1))

    Donde F1 es el texto de muestra y B2:B10 son las celdas a contar.

    Cómo funcionan estas fórmulas:

    En el núcleo de ambas fórmulas, se realizan 2 comprobaciones:

    1. Identificar las filas visibles y ocultas. Para ello, se utiliza la función SUBTOTAL con la función función_num a 103. Para suministrar todas las referencias de celdas individuales a SUBTOTAL, utilice INDIRECTO (en la primera fórmula) o una combinación de OFFSET, FILA y MIN (en la segunda fórmula). Dado que nuestro objetivo es localizar las filas visibles y ocultas, no importa realmente a qué columna hacer referencia (A en nuestro ejemplo). El resultado de esta operación es una matriz de 1 y 0 donde los unos representan las filas visibles y las filas ocultas representan las filas ocultas.filas y ceros - filas ocultas.
    2. Busca celdas que contengan un texto dado. Para ello, compara el texto de muestra (F1) con el rango de celdas (B2:B10). El resultado de esta operación es una matriz de valores TRUE y FALSE, que se convierten en 1 y 0 con la ayuda del operador unario doble.

    Por último, la función SUMPRODUCT multiplica los elementos de las dos matrices en las mismas posiciones y luego suma la matriz resultante. Como al multiplicar por cero se obtiene cero, sólo las celdas que tienen 1 en ambas matrices tienen 1 en la matriz final. La suma de los 1 es el número de celdas filtradas que contienen el texto especificado.

    Fórmula para contar celdas filtradas con texto específico (coincidencia parcial)

    Para contar las celdas filtradas que contienen un determinado texto como parte del contenido de la celda, modifique las fórmulas anteriores de la siguiente manera. En lugar de comparar el texto de muestra con el rango de celdas, busque el texto objetivo utilizando ISNUMBER y FIND como se explica en uno de los ejemplos anteriores:

    =SUMPRODUCT(SUBTOTAL(103, INDIRECT("A"&ROW(A2:A10))), --(ISNUMBER(FIND(F1, B2:B10))))

    =SUMPRODUCTO(SUBTOTAL(103, OFFSET(A2:A10, FILA(A2:A10) - MIN(FILA(A2:A10)),,1)), --(ISNUMBER(FIND(F1, B2:B10))))

    Como resultado, las fórmulas localizarán una cadena de texto dada en cualquier posición de una celda:

    Nota. La función SUBTOTAL con 103 en el función_num identifica todas las celdas ocultas, filtradas y ocultadas manualmente. Como resultado, las fórmulas anteriores sólo cuentan células visibles independientemente de cómo se hayan ocultado las celdas invisibles. Para excluir sólo las celdas filtradas pero incluir las ocultadas manualmente, utilice 3 para función_num .

    Así es como se cuenta el número de celdas con un texto determinado en Excel. Gracias por leer y ¡espero verte en nuestro blog la semana que viene!

    Descargas disponibles

    Fórmulas de Excel para contar celdas con determinado texto

    Michael Brown es un entusiasta de la tecnología dedicado y apasionado por simplificar procesos complejos utilizando herramientas de software. Con más de una década de experiencia en la industria de la tecnología, ha perfeccionado sus habilidades en Microsoft Excel y Outlook, así como en Google Sheets y Docs. El blog de Michael está dedicado a compartir su conocimiento y experiencia con otros, brindando consejos y tutoriales fáciles de seguir para mejorar la productividad y la eficiencia. Ya sea un profesional experimentado o un principiante, el blog de Michael ofrece información valiosa y consejos prácticos para aprovechar al máximo estas herramientas de software esenciales.