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

Jacob Jan Tuinstra
fuente
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, ""))
Rubén
fuente
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.

Enrique Ramírez
fuente
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.

Erik Tyler
fuente
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

usuario0
fuente