Policz liczbę słów w ciągu w Arkuszach Google


Odpowiedzi:


9

W arkuszach kalkulacyjnych Google zrobiłbym to nieco inaczej.

Formuła

=COUNTA(SPLIT(A1, " "))

Wyjaśnione

Ta SPLITfunkcja jest dostępna tylko w Arkuszu kalkulacyjnym Google i dzieli zawartość komórki na każde miejsce ( " "). COUNTFunkcja będzie po prostu policzyć przypadki.

Formuła Excela daje tę samą odpowiedź, ale nieco bardziej pracochłonną:

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

Zrzut ekranu

wprowadź opis zdjęcia tutaj

Uwaga

Zobacz poniższą odpowiedź dotyczącą tego, które formuły są unikalne w Arkuszu kalkulacyjnym Google:
https://webapps.stackexchange.com/a/44719/29140


1
W większości przypadków to działało dla mnie (w Arkuszach Google) ... z wyjątkiem pustej komórki zwróconej 1 .. Więc zmieniłem ją trochę, aby puste komórki =COUNTA(SPLIT(A1, " "))-IF(A1 = "",1,0)
zwróciły

Robimy coś podobnego, ale to nie zadziała, gdy spacje nie są zwykłymi znakami spacji (np. Tabulatorami itp.). Chciałbym więc znaleźć nieco sprytny sposób liczenia słów.
Aldo „xoen” Giambelluca

Cześć Aldo, najlepiej zadać pytanie tutaj w aplikacjach internetowych !!!
Jacob Jan Tuinstra

3

Nieznaczne ulepszenie formuły w tej drugiej odpowiedzi, więc w przypadku, gdy A1 jest pusty lub jeśli ma pusty ciąg, zwróci zero.

= JEŻELI (LEN (A1) = 0,0, COUNTA (SPLIT (A1, „”))

0

Jeśli chcesz to zrobić w zakresie komórek (tj. A1:A25), Możesz użyć powyższej formuły, gdzie CHAR(32)jest spacja" "

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

Działa to z pustymi komórkami, z wyjątkiem sytuacji, gdy początkowa komórka jest pusta.


0

Inne:

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

To po prostu dołącza znak spacji i funta na końcu wszystkiego, co znajduje się w komórce docelowej, w tym dodając go do wartości zerowej , więc nigdy nie ma żadnych błędów wyrzucających licznik. Następnie odejmujemy tylko tymczasowe „fałszywe miejsce” na końcu.


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

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.