Cuente la cantidad de palabras en una cadena en Hojas de cálculo de Google


Respuestas:


9

En las hojas de cálculo de Google, lo haría un poco diferente.

Fórmula

=COUNTA(SPLIT(A1, " "))

Explicado

La SPLITfunción solo está disponible en la hoja de cálculo de Google y dividirá el contenido de la celda en cada espacio ( " "). La COUNTfunción simplemente contará las instancias.

La fórmula de Excel da la misma respuesta, pero un poco más laboriosa:

=LEN(TRIM(A1))-LEN(SUBSTITUTE(A1," ",""))+1

Captura de pantalla

ingrese la descripción de la imagen aquí

Observación

Consulte la siguiente respuesta sobre qué fórmulas son exclusivas de la hoja de cálculo de Google:
https://webapps.stackexchange.com/a/44719/29140


1
En su mayor parte, esto funcionó para mí (en Hojas de cálculo de Google) ... excepto que la celda vacía devolvió 1 ... Así que lo cambié un poco para que las celdas vacías devuelvan 0:=COUNTA(SPLIT(A1, " "))-IF(A1 = "",1,0)
CenterOrbit

Hacemos algo similar, pero no funcionará cuando los espacios no sean el carácter de espacios normales (por ejemplo, pestañas, etc.). Así que me encantaría encontrar una forma ligeramente inteligente de contar palabras.
Aldo 'xoen' Giambelluca

Hola Aldo, lo mejor es simplemente hacer tu pregunta aquí en aplicaciones web.
Jacob Jan Tuinstra

3

Ligera mejora a la fórmula en esta otra respuesta, por lo que en caso de que A1 esté en blanco o si tiene una cadena vacía, devolverá cero.

= SI (LEN (A1) = 0,0, COUNTA (SPLIT (A1, ""))

0

Si desea hacer esto en un rango de celdas (es decir A1:A25), puede usar la fórmula anterior, donde CHAR(32)está el carácter de espacio" "

=COUNTA(SPLIT(ARRAYFORMULA(CONCATENATE(A1:A25&CHAR(32)));CHAR(32)))

Esto funciona con celdas en blanco, excepto cuando la celda inicial está en blanco.


0

Otro:

=COUNTA(SPLIT(TRIM(A1&" #")," "))-1

Esto solo agrega un espacio y un signo de libra al final de lo que sea que esté en la celda objetivo, incluida la adición a un valor nulo , por lo que nunca hay errores al descartar el conteo. Entonces solo restamos ese "espacio falso" temporal al final.


0

=ARRAYFORMULA(IF(LEN(A3:A), 
 MMULT(IF(IFERROR(SPLIT(IF(LEN(A3:A), A3:A, ), " "))<>"", 1, 0), 
 ROW(INDIRECT("A1:A"&COUNTA(IFERROR(
 QUERY(IF(IFERROR(SPLIT(IF(LEN(A3:A), A3:A, ), " "))<>"", 1, 0), "limit 1", 0)))))^0), ))

0 0

______________________________________________________________

=ARRAYFORMULA(IF(LEN(A3:A), LEN(REGEXREPLACE(A3:A, "[^\s]", ))+1, ))

0 0

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.