Conta il numero di parole in una stringa in Fogli Google


Risposte:


9

In Google Spreadsheets, lo farei in modo leggermente diverso.

Formula

=COUNTA(SPLIT(A1, " "))

spiegato

La SPLITfunzione è disponibile solo in Google Spreadsheet e suddivide il contenuto della cella su ogni spazio ( " "). La COUNTfunzione conterà semplicemente le istanze.

La formula di Excel dà la stessa risposta, ma un po 'più laboriosa:

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

Immagine dello schermo

inserisci qui la descrizione dell'immagine

osservazione

Vedi la seguente risposta su quali formule sono uniche per Google Spreadsheet:
https://webapps.stackexchange.com/a/44719/29140


1
Per la maggior parte questo ha funzionato per me (in Fogli Google) ... tranne la cella vuota restituita 1 .. Quindi l'ho cambiata un po 'in modo che le celle vuote restituiscano 0:=COUNTA(SPLIT(A1, " "))-IF(A1 = "",1,0)
CenterOrbit

Facciamo qualcosa di simile ma non funzionerà quando gli spazi non sono il normale carattere degli spazi (ad esempio schede, ecc.). Quindi mi piacerebbe trovare un modo leggermente intelligente di contare le parole.
Aldo 'xoen' Giambelluca,

Ciao Aldo, la cosa migliore è semplicemente porre la tua domanda qui su Applicazioni Web !!!
Jacob Jan Tuinstra,

3

Leggero miglioramento della formula in questa altra risposta, quindi nel caso in cui A1 sia vuoto o se ha una stringa vuota, restituirà zero.

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

0

Se vuoi farlo su un intervallo di celle (cioè A1:A25) puoi usare la formula sopra, dove CHAR(32)è il carattere dello spazio" "

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

Funziona con celle vuote, tranne quando la cella iniziale è vuota.


0

Un altro:

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

Questo aggiunge semplicemente un segno di spazio e cancelletto alla fine di qualsiasi cosa si trovi nella cella di destinazione, incluso l'aggiunta a un valore nullo , quindi non ci sono mai errori nel declassare. Quindi stiamo solo sottraendo quel "spazio falso" temporaneo alla fine.


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

______________________________________________________________

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

0

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.