Contar caracteres con Excel

En esta ocasión mostraré cómo contar caracteres con Excel ya sea que se refiera a contar todos los caracteres dentro de una celda o a contar el número de apariciones de un solo carácter dentro de una celda.

Contar todos los caracteres en una celda

Para obtener el número total de caracteres dentro de una celda podemos utilizar la función LARGO.

Contar caracteres con Excel

Debes de tener claro que para la función LARGO los espacios cuentan como caracteres.

Contar las apariciones de un carácter específico

Supongamos que para la cadena de texto del ejemplo anterior deseo contar las apariciones de la letra “e”. Para lograr este objetivo utilizaré la función LARGO y también la función SUSTITUIR.

La función SUSTITUIR la utilizaré para crear en memoria una copia de la cadena de texto pero que no tenga la letra “e”. De esta manera puedo obtener la diferencia entre ambas cadenas y saber cuántas veces aparece la letra “e” en la cadena original.

Contar número de caracteres en Excel

Es importante mencionar que la función SUSTITUIR hace una copia de la cadena de texto en memoria por lo que nunca se hace una sustitución real en la celda. Otra cosa importante a notar en este ejemplo es que la función SUSTITUIR hace diferencia entre mayúsculas y minúsculas por lo que la letra “E” de la palabra “Excel” no está siendo contabilizada.

Una alternativa para resolver el tema de la sensibilidad a mayúsculas y minúsculas es utilizar la función MINUSC para convertir todas las letras en minúsculas antes de hacer la sustitución:

Contar caracteres en Excel 2010

De esta manera podemos conocer las veces que una letra aparece en una cadena de texto sin importar si es mayúscula o minúscula.

Contar apariciones de una cadena de texto

Ahora supongamos que deseo conocer el número de veces que aparece una cadena de texto dentro de una celda. A diferencia del caso anterior, donde era solamente un carácter, para encontrar el número de veces que aparece una cadena debo agregar una división a la fórmula. Por ejemplo, si deseo saber las veces que aparece la cadena de texto “en” debo utilizar la siguiente fórmula:

Fórmula para contar caracteres en Excel

La división realizada al final es necesaria para considerar el tamaño en caracteres de la cadena de texto que está siendo buscada.

60 pensamientos en “Contar caracteres con Excel

  1. SERGIO

    En verdad, es de gran ayuda. Felicidades. M e sirvio de mucha utilidad

  2. Juan

    Hola!

    En primer lugar, muchas gracias por el post! Me quedan aun así algunas dudas… a ver si podeis echarme una mano…

    Primero, que no consigo que me ande la ultima de las formulas :(

    Luego, como podria aplicarse esta formula a un rango en lugar de una unica celda? Seria posible? Simplemente se debe colocar el rango donde la celda?

    I finalmente, es posible contar cadenas de texto que sean una frase? (En el ejemplo podria ser “de texto en”).Deben separarse las palabras de algun modo en especial?

    Muchas gracias por adelantado i disculpad la pesadez!

    1. Moises Autor

      Hola Juan,
      La función LARGO no admite un rango como parámetro sino una cadena de texto. Si quieres contar la cantidad de caracteres de diferentes celdas debes concatenar los valores. Así podemos contar los caracteres de las celdas A1, B1 y C1: =LARGO(A1 & B1 & C1).
      En cuando a contar frases completas no hay inconveniente alguno, no deben separarse las palabras de ningún modo especial, solamente debes saber que se buscará la frase exactamente como la indiques.

  3. Raúl Vázquez

    Muchas gracias mi hermano. Me sirvió muchísimo para un trabajo que hago. Disculpa, para el caso de que la palabra tenga vocales con acento?

    1. Moises Autor

      Hola Raúl, no hay ninguna diferencia. Solamente escribe el carácter con acento y la función SUSTITUIR lo encontrará sin problema.

  4. Cynthia

    Hola , tengo una duda, quiciera saber si se puede sumar en una celda numeros y letras?, por ejemplo en kilos, 77k + 50k y me salga el resultado … gracias.

    1. Moisés Ortíz Autor

      Hola Cynthia, esto es posible siempre y cuando la letra “k” sea colocada automáticamente por el formato de la celda de manera que “en el fondo” la celda siga siendo de tipo número. Si tú ingresas tanto el número como la letra “k” con el teclado, Excel la reconocerá como texto y no habrá manera de sumarlas directamente más que utilizando funciones para extraer el dato numérico. Para conocer un poco más sobre formatos de celda personalizados te recomiendo leer este artículo:
      http://exceltotal.com/formato-personalizado-de-celdas-en-excel/

  5. Renzo

    Estimado, tengo que contar los caracteres blancos antes del texto, es decir, tengo ” HOLA”. Antes del Hola son 2 caracteres. Como se puede hacer eso?
    He visto que se puede buscar la H y contar para atras, pero en otra fila tengo ” CHAU” y ya esa formula no me sirve.
    Saludos,

    RM

    1. Moisés Ortíz Autor

      Hola Renzo,
      Para contar los caracteres blancos al inicio de una cadena de texto puedes utilizar la siguiente fórmula:
      =ENCONTRAR(IZQUIERDA(ESPACIOS(A1)), A1) – 1

      Estoy suponiendo que el texto se encuentra en la celda A1.
      Saludos.

  6. Renzo

    Exelente, muchisimas gracias.

  7. PABLO COARITA

    UNA CONSULTA RESULTA Q QUISIERA SABER COMO EJEM, UN LISTA DE DIRECTORIO TELEFONICO SABER CUANTOS NOMBRES CONTIENEN EL MISMO APELLIDO????? . GRACIAS POR SU RESPUESTA. SALUDOS CORDIALES

    1. Moisés Ortíz Autor

      Hola Pablo, para contar las celdas que contienen un texto se puede utilizar la función CONTAR.SI. La siguiente fórmula contará las celdas de la columna A que contengan el texto Morales:
      =CONTAR.SI(A:A, “*Morales*”)

      Observa el uso del carácter comodín (*) que indica que puede haber cualquier número de caracteres antes y después del apellido. Te dejo dos artículos adicionales que puedes leer. El primero sobre la función CONTAR.SI:
      http://exceltotal.com/la-funcion-contar-si-en-excel/

      Y el segundo artículo sobre los caracteres comodín en Excel:
      http://exceltotal.com/busquedas-aproximadas-en-excel/

  8. Georgina

    Buenas tardes, estoy necesitando ayuda para encontrar una formula que me sume una fila que tiene como datos “dias horas minutos”. El problema es que aparecen con este tipo de formato, ejemplo “0d 8h 35m”, y las letras no me dejan sumar normalmente. Necesitaria que me tire el dato de total en minutos u horas, me es indistinto.
    Agradeceria realmente la ayuda.

    Georgina

  9. EDGAR PINZON

    hola amigo necesito una ayuda resulta que debo armar un excell y en una de las columnas no puedo tener texto de mas de 120 caracteres lo que pasa es que al parecer esa columna tiene muchos espacios en blano y si le doy la opcion LARGO todo me sale que tiene 255 caracteres lo cual no es cierto porque esta contando la cantidad x de caracteres en blanco que hay despues de la ultima letra si yo me paro en la ultima letra y le doy SUPR infinidad de veces listo me deja los caracteres correcto pero resulta que son 3000 datos para ponerme a hacerle eso a cada uno que puedo hacer para contar con LARGO correctamente

    1. Moisés Ortíz Autor

      Hola Edgar, en Excel el espacio en blanco también es considerado un carácter. Si quieres omitir los espacios en blanco puedes utilizar la función LARGO junto con la función ESPACIOS de la siguiente manera:
      =LARGO(ESPACIOS(A1))

  10. Manuel

    Buenas tardes,
    me gustaría saber como puedo hacer,para que al añadir datos a un conjunto de celdas en columna, esa columna no sobrepase ni sea menor a 20 caracteres (en el caso de ser menor rellene con espacios en blanco)
    Muchisimas gracias por su ayuda

    1. Moisés Ortíz Autor

      Hola Manuel, utiliza la siguiente fórmula:
      =IZQUIERDA(A1 & REPETIR(” “, 20), 20)

      Estoy suponiendo que el texto está en la celda A1. De esta manera el resultado será siempre una cadena de texto de longitud 20.

  11. Ruben Muñoz

    Necesito una fórmula que cuente de entre un grupo de datos los que pertenezcan a un rango, por ejemplo valores mayores a 5 y menores a 15 pero no más, es para encontrar frecuencias.

  12. daniel

    Hola como puedo extraer los datos de una celda hasta donde hay un espacio? por ejemplo la frase Hola buenos dias, solo quiero extraer la palabra “Hola” pero a lo mejor la primera palabra es de diferentes caracters y no puedo usar un left que hago?

    1. Moisés Ortíz Autor

      Hola Daniel, utiliza la siguiente fórmula para extrear la primera palabra de cualquier cadena de texto en Excel:
      =IZQUIERDA(A1,ENCONTRAR(” “,A1)-1)

      1. Marian

        Quería lo mismo pero empezando desde la derecha. Tengo celdas con lo siguiente:
        “gastos mensuales 12.369.32″
        “ingresos anuales completos 789.365.124″
        “impuestos 12.369″
        y así.
        querría separa el detalle (texto con espacios) del número. Me serviría extraer desde la derecha hasta el primer espacio, al reves que en el caso anterior.
        Gracias.

  13. Mayra

    ¡Gracias!
    Me fue de gran ayuda.

  14. marcela

    verdaderamente eres increíble! muchísmas gracias

  15. Santiago

    Moises me puedes ayudar es que tengo en la celda A2 esto 123A121212333B123C123 y debo hallar con una formula la cantidad de caracteres entre en A y B. como lo hago? gracias!

    1. Moisés Ortíz Autor

      Hola Santiago, utiliza la siguiente fórmula para contar los caracteres entre ambas letras:
      =ENCONTRAR(“B”,A2) – ENCONTRAR(“A”,A2) – 1

  16. martin

    hola, oye tengo el siguiente problema que mi archivo de excel tiene demaciadas palabras y numeros dentro de una celda, y quisiera separar cada palabra en una celda de forma horizontal cabe mencionar que son muchas filas, y no tienen un orden en si para usar el separador de texto en columnas.
    ejemplo:

    1000 Salario semanal 7.00 1,054.70 /391 Aportación trabaj. 87.15
    1048 Destajo Rezagado 6.00 4,260.45 /440 Impuesto ordinario 1,000.02
    1049 Destajo Des. Maq. 2.00 461.82
    1100 Adelanto por redondear 0.20 Total deducciones 1,087.17

    cada fila esta en una celda, pero no encuento la manera de separarla, espero expliarme y me puedas ayudar gracias

  17. Manuel

    Buen dia, como puedo hacer para no tener en cuenta los espacios dentro de la cadena de caracteres y no los cuente como otro adicional. EJE: buen dia (daria como resultado 8 dado que tiene un espacio y no 7 que es el numero real de letras.) gracias

    1. Moisés Ortíz Autor

      Hola Manuel, sustituye los espacios en blanco por una cadena vacía y posteriormente cuenta las letras. La fórmula sería la siguiente:
      =LARGO(SUSTITUIR(A1,” “,””))

  18. Jenry

    Buenas tardes, mi estimado. Muy bueno su post.
    Quiero pedir su apoyo en lo siguiente: Quiero extraer la primera letra de los apellidos.
    Por ejemplo:
    RODRÍGUEZ PAREDES (que extraiga RP)
    Y en general, como extraer la primera letra de cada palabra de un texto.
    Muchas gracias por su atención.

  19. manuel

    Buenas era para hacer una consulta, soy nutricionista y haciendo un informe tengo unas tablas bastante extensas donde pone el peso en gramos de alimentos, en cada casilla pone el peso, ej: 250g, yo solo quiero sumar los numeros, ¿debo quitar la g de cada una de las celdas para sumar el total? esque claro le doy al sumatorio y me da error, al contener la misma casilla nuemros y letras. Gracias

    1. Moisés Ortíz Autor

      Hola Manuel, lo mejor es que dejes en la celdas solamente los valores numéricos.

  20. Mario

    Valiosísima tu aportación.
    Muchas Gracias por esa disposición.

  21. Mario

    Valiosísima tu aportación.
    Muchas Gracias por esa disposición.
    Me faltó agregar que trabajo con tablas de google pero con leves cambios a lo vertido aqui he logrado resolver mi problema.

  22. Alexis Delgado

    Amigo Moises, te escribo desde Miami para darte las gracias por tus postings los cuales me han ayudado muchisimo, Good Job!!

  23. Javi Cruz

    Buen dia
    Necesito una formula que me diga cuantos caracteres tiene una celda, pero no solo cuando termine de escribirla sino que como lo vaya escribiendo me vaya diciendo cuantos voy escribiendo en tiempo real
    No se si me explique?
    Gracias de Antemano
    Saludos
    JC

    1. Moisés Ortíz Autor

      Hola Javi, eso no es posible con una fórmula.
      La única alternativa es a través de una macro pero su complejidad es muy alta porque Excel no tiene un evento que se dispare con la pulsación de cada tecla.

  24. Luis

    Tengo 2 celdas en una ten go numeros tal que asi, 1,2,24 y 25 y en la otra celda quiero que me cuente solo la cantidad de numeros que hay en este caso 4, pero utilizo la formula de Largo con sustituir pero no logro dar con el resultado.
    Me podriais ayudar gracias

    1. Moisés Ortíz Autor

      Hola Luis, ya que todos los números están separados por una coma el objetivo será contar las comas. La fórmula sería la siguiente:
      =LARGO(A1) – LARGO(SUSTITUIR(A1, “,”, “”)) + 1
      Sumo uno al final porque la cantidad de números siempre será el número de comas mas uno ya que el último número no tiene una coma al final.

      1. luis

        Gracias, pero tengo un problema. Si no pongo ningun numero en la celda A1 en la celda A2 me da 1 por defecto. Hay alguna posibilidad de ir metiendo datos y que los vaya contando segun los voy metiendo.
        De nuevo gracias

        1. Moisés Ortíz Autor

          Si no quieres que se muestre el 1 cuando la celda está vacía, entonces inserta toda la fórmula dentro de una función SI, por ejemplo:
          =SI(LARGO(A1) > 0, LARGO(A1) – LARGO(SUSTITUIR(A1, “,”, “”)) + 1, 0)

          1. Luis

            Gracias tu ayuda me ha sido valiosisima.

  25. Alvaro

    Muchas gracias me sirvió muchísimo, excelente la verdad.! sin embargo si quiera por ejemplo, aparte de saber cuantos caracteres hay una celda, ¿Cuantas letras y cuantos numero hay en una celda?
    (CELDA A1)
    ABCD1234567: ya sabebmos que para saber cuentos caracteres hay la forma es: =LARGO(A1)
    Como les mencionaba ¿Como puedo saber cuantas letras y cuantos números específicamente hay en esta misma Celda?
    Gracias por el aporte.

    1. Moisés Ortíz Autor

      Hola Alvaro, no existe una función que nos ayude con una tarea como esa. Será necesario utilizar macros, pero no tengo un ejemplo que haga precisamente eso. Sin embargo, te sugiero consultar el siguiente artículo:
      http://exceltotal.com/macro-para-extraer-numeros-de-una-celda/

      Una alternativa es utilizar dicha macro para extraer los números de una celda y posteriormente contar su longitud con la función LARGO.

  26. Gerardo

    Hola. gracias por la aportación… ¿hay alguna manera de tener un “bloqueo” dentro de la fórmula… es decir que además de contabilizar los caracteres no te permita seguir escribiendo porque debes cumplir un máximo… Por ejemplo: 70 caracteres

    1. Moisés Ortíz Autor

      Hola Gerardo, eso solamente es posible a través de código VBA:

      Private Sub Worksheet_Change(ByVal Target As Range)

      If Target = Range(“A1″) Then
      If Len(Target.Value) > 70 Then
      Target.Value = Left(Target.Value, 70)
      End If
      End If

      End Sub

  27. GERARDO LIZARRITURRI

    ESTOY INTENTANDO APRENDER LO MEJOR POSIBLE EXCEL. TENGO EL 2010 PERO TANTO EN AL AYUDA DEL SOFTWARE COMO EN LA AYUDA DE LA PÁGINA DE OFFICE ME DAN FÓRMULAS Y EJEMPLOS QUE AL COPIARLOS ME DAN ERRORES.
    POR EJEMPLO AL QUERER CONTAR LOS ESPACIOS EN BLANCO ANTES DEL TEXTO ME SUGIEREN LA FÓRMULA =ENCONTRAR(IZQUIERDA(ESPACIOS(B68),B68)–1 PERO ME DA ERROR.
    BUSCO LA FÓRMULA ESPACIO PARA VER CUAL ES EL ERROR Y NI SIQUIERA ME APARECE LA FÓRMULA. OJALA ME PUEDAN AYUDAR.
    ESTA PERFECTO ESTE ESPACIO… FELICIDADES

    1. Moises Ortiz Autor

      Hola Gerardo, es posible que tengas Excel 2010 sin haber instalado el Service Pack de Office 2010 y en ese caso la función ESPACIOS tiene otro nombre: RECORTAR.
      Puedes leer un poco más sobre ese cambio de funciones en el siguiente artículo:
      http://exceltotal.com/cambio-de-nombre-de-funciones-en-excel-2010/

  28. GERARDO LIZARRITURRI

    OTRO COMENTARIO
    PARA APLICAR UN FORMATO CONDICIONADO ME INSTRUYEN QUE APLIQUE UNA FÓRMULA PARA QUE ME INDIQUEN LOS VALORES QUE SE DUPLIQUEN Y ME APAREZCAN CON UN FORMATO DIFERENTE.
    LA FÓRMULA SUGERIDA ES =COUNTIF($D$2:$D$11,D2)>1
    DONDE LOS VALORES ESTÁN EN LAS CELDAS DEL D2 AL D11.
    SIN EMBARGO CREO QUE EN EXCEL 2010 NO RECONOCE EL RANGO $D$2:$D$11 NI LA FÓRMULA COUNTIF PORQUE NO LA HAYÉ EN EL TEMA DE AYUDA.
    DE ANTEMANO GRACIAS POR SUS CONTRIBUCIONES.

    1. Moises Ortiz Autor

      Gerardo, si tienes Excel en español deberás utilizar las funciones por su nombre en español. En este caso, el equivalente de la función COUNTIF es la función CONTAR.SI

  29. Estrella

    Hola,
    tengo una duda quizás un poco compleja que no he podido resolver. Es para CONTAR APARICIONES DE TEXTO DENTRO DE TEXTO, DEVOLVIENDO LA CANTIDAD EN CADA FILA, y para hacer con varias búsquedas. Explico:
    Tengo una base de datos en excel. En uno de los campos hay frases de texto. Necesito contar las apariciones de texto dentro de texto y que el cómputo me aparezca en otra columna. No sé si es mejor sacar los datos de excel, o hacer algo tipo macro/tabla dinámica/script con estos pasos básicos.
    – Buscar una cadena de texto. Por ejemplo la palabra “Hola” o una cadena de palabras “¿Qué tal?” dentro de un conjunto de texto más amplio donde estas u otras cadenas de texto pueden estar en cualquier lado. Por ejemplo,
    TEXTOS
    1. Hola, …..
    2. Este es un gran… Hola…
    La idea es decir a Excel u otro programa donde me llevara los datos:
    1. Busca esta cadena en la columna A: ‘Hola’….
    2. Si la encuentras, en la columna B pon un código numérico. Ej. 1
    3. Si no la encuentras, en la columna B pon un 0
    Tengo que hacer esto con varias palabras clave que quiero analizar en una base de datos con texto, de forma que lo mismo conviene una macro o algo así que vaya buscando esas palabras si ya tienes delimitado un número X de palabras.
    Un saludo,
    Estrella.

  30. Juan Carlos

    Hola muy buenas tus aportaciones, podria ayudarme, como puedo sacar la fecha de naciemiento de una curp y que me la de en dia/mes/año… gracias

    1. Moises Ortiz Autor

      Hola Juan Carlos, utiliza la siguiente fórmula:
      =FECHANUMERO(EXTRAE(A1,9,2) & “/” & EXTRAE(A1, 7,2) & “/” & EXTRAE(A1,5,2))

  31. Daniel

    hola buen dia, mi duda es: en una celda tengo varios renglones de texto, como puedo contar el numero de caracteres de cada renglon, ya que si uso la funcion largo, me cuenta los de toda la celda:
    gracias y saludos

    1. Moisés Ortíz Autor

      Hola Daniel, no existe una función de Excel que haga eso y de hecho no será fácil de lograr utilizando una fórmula ya que es necesario analizar carácter por carácter y detenrse al encontrar un salto de línea para devolver la cuenta y eso solamente se logra con programación VBA.