Combinando las fórmulas disponibles para nosotros en Google Sheets relacionadas al manejo de cadenas de texto, podemos ahorrarnos mucho trabajo para obtener información valiosa sobre textos o frases de los cuales necesitemos saber cosas básicas, tales como contar palabras en una celda y activar alguna condición o contar letras para saber si el texto cabe en algo limitado como un tweet o un título de video. Vamos a aprender a usar algunas de estas funciones para resolver estos problemas relacionados con análisis de datos.

Contar letras

Comencemos por lo más sencillo y práctico. Para contar letras de un texto en una celda, simplemente usamos la fórmula LEN o LARGO si tu configuración está en español.

=LEN( texto )

Con esto podemos hacer algo muy útil, si aplicamos lo que ya aprendimos para crear formatos condicionales. Vamos a ver si es apto el texto para un título en YouTube, cuya longitud máxima es de 100 caracteres:

NOTA: Toma en cuenta que en este caso al decir “conteo de letras” nos referimos en realidad al “conteo de caracteres”. Es decir, un punto, un guión y un espacio están siendo contados por LEN

Contar palabras

Ahora, vamos a combinar algunas otras fórmulas para manejar texto con el propósito de contar cuántas palabras completas hay en un texto contenido en una celda. Las fórmulas que usaremos serán =COUNTA() y =SPLIT() de esta manera:

=COUNTA(SPLIT( texto ," "))

Como puedes ver, primero dividimos el texto en varias partes usando SPLIT, usando el caracter de espacio como delimitador. Esto parte, por ejemplo, “El Cuervo” en dos elementos:

  • El
  • Cuervo

Y después utilizamos =COUNTA() para contar estos elementos. Usamos COUNTA y no COUNT porque COUNT solamente puede contar elementos numéricos, y como el resultado de SPLIT es un conjunto de datos (es decir, un arreglo), necesitamos COUNTA, que cuenta los elementos dentro de un arreglo (por eso la A), y este arreglo puede contener tanto números como letras y otros caracteres.

Contar palabras en textos con saltos de línea

Hasta aquí todo ha funcionado bien, pero fíjate en lo que pasa si introduzco un texto que contiene saltos del línea:

Por alguna razón el resultado es de 57 palabras, ¡cuando deberían ser 66! No te preocupes, vamos a arreglar fácilmente esto, usando la fórmula SUBSTITUTE para temporalmente reemplazar todos los saltos de línea por espacios y así el conteo sea adecuado:

=COUNTA(SPLIT(SUBSTITUTE( texto ,CHAR(10)," ")," "))

  • CHAR(10) es equivalente a un salto de línea, que es lo que buscamos para arreglar temporalmente nuestro texto
  • SUBSTITUTE(A6,CHAR(10), " ") reemplaza todos los saltos de línea por un espacio

Una vez entendido esto, ahora sí, SPLIT nos permite hacer el mismo proceso que antes, y así tenemos el conteo correcto:

Contar palabras específicas en un texto

Ahora vamos a pasar a algo más útil todavía: contaremos cuántas veces aparece una palabra específica en un texto determinado en una celda. Para lograrlo usaremos la función COUNTIF de esta manera:

=COUNTIF(SPLIT( texto ," "), palabra )

Contar palabras sin que estorben otros caracteres

Este caso fue sencillo, pero mira lo que pasa cuando en este ejemplo intentamos buscar la palabra Poe, la cual en el texto va acompañada de una coma (,):

Claramente vemos la palabra una vez, pero marca 0. ¿Por qué? Es un problema parecido a lo que veíamos antes con los saltos de línea. Al delimitar por espacios, realmente la palabra completa a consideración de Google Sheets, es

  • Poe,

Con todo y la coma (,). Entonces, vamos a usar algo rápido y poderoso para solucionarlo: expresiones regulares. Si reemplazamos todos los caracteres que no nos sirven al conteo por un espacio, podemos seguir haciendo nuestros conteos sin problema. Para esto vamos a utilizar la fórmula REGEXREPLACE de esta manera:

=REGEXREPLACE( texto ,"[,\.—“”\n]"," ")

Dentro de los corchetes ponemos todos los caracteres que estamos buscando:

  • coma: ,
  • punto: \. (lleva \ por ser un caracter especial)
  • guión largo:
  • comillas de apertura:
  • comillas de cierre:
  • salto de línea: \n

NOTA: Sí, podríamos usar SUBSTITUTE como antes, pero la fórmula se haría demasiado larga y complicada. Este método es mucho más limpio, rápido y legible para darle mantenimiento.

Si combinamos todo lo que acabamos de aprender en una sola fórmula, nos queda así:

=COUNTIF(SPLIT(REGEXREPLACE( texto ,"[,.—“”\n]"," ")," "), palabra )

Un tip extra para cuando uses muchas fórmulas anidadas es usar saltos de línea para que sea más fácil de leer:

=COUNTIF(
  SPLIT(
    REGEXREPLACE( texto ,"[,.—“”\n]"," "),
  " "),
palabra)
Lenguaje del código: JavaScript (javascript)

Y listo, así puedes ir combinando fórmulas de manejo de cadenas de texto para cualquier necesidad que tengas, por ejemplo en el análisis de tweets o posts de Facebook.

Plantilla terminada para descargar

Guía en video

Si tienes dudas puedes ver esta misma guía explicada en video:

¡Espero que te haya sido útil esta guía! No olvides seguirnos en YouTube para más tips, trucos y guías de productividad.

Si tienes dudas, deja un comentario y con gusto te ayudaremos a resolverlas.

Aprende Sheets: Curso práctico de Hojas de cálculo de Google
Aprende Sheets: Curso práctico de Hojas de cálculo de Google