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.