Rumus Excel: Hitung jumlah perkataan dalam sel -

Isi kandungan

Formula generik

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

Ringkasan

Untuk mengira jumlah kata dalam sel, anda boleh menggunakan formula berdasarkan fungsi LEN dan SUBSTITUTE, dengan bantuan fungsi TRIM. Dalam contoh yang ditunjukkan, formula dalam sel C5, disalin ke bawah, adalah:

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

Rumus mengembalikan kiraan perkataan dalam sel B5.

Penjelasan

Excel tidak mempunyai fungsi khusus untuk mengira perkataan dalam sel. Namun, dengan sedikit kepintaran, anda dapat membuat formula seperti menggunakan fungsi SUBSTITUTE dan LEN, dengan bantuan dari TRIM, seperti yang ditunjukkan dalam contoh. Pada tahap tinggi, formula ini menggunakan fungsi LEN untuk mengira bilangan watak dalam sel, dengan dan tanpa ruang, kemudian menggunakan perbezaan untuk mengetahui jumlah kata. Ini berfungsi, kerana jumlah perkataan sama dengan bilangan spasi + 1, selagi ada satu ruang di antara setiap perkataan.

Bahagian pertama formula menghitung watak dalam sel B5, setelah mengeluarkan ruang tambahan:

=LEN(TRIM(B5)) // normalize space, count characters

Di dalam LEN, fungsi TRIM terlebih dahulu membuang ruang tambahan antara perkataan, atau pada awal atau akhir teks. Ini penting, kerana setiap ruang tambahan akan membuang jumlah perkataan. Dalam kes ini, tidak ada watak ruang tambahan, jadi TRIM mengembalikan teks asal terus ke fungsi LEN, yang mengembalikan 30:

LEN("All Quiet on the Western Front") // returns 30

Pada ketika ini, kami mempunyai:

=30-LEN(SUBSTITUTE(B5," ",""))+1

Seterusnya, kami menggunakan fungsi SUBSTITUTE untuk membuang semua watak ruang dari teks:

SUBSTITUTE(B5," ","") // strip all space

Perhatikan SUBSTITUTE dikonfigurasi untuk mencari karakter spasi (""), dan ganti dengan rentetan kosong (""). Secara lalai, SUBSTITUTE akan menggantikan semua ruang. Hasilnya dihantar terus ke fungsi LEN, yang mengembalikan kiraannya:

LEN("AllQuietontheWesternFront") // returns 25

LEN mengembalikan 25, jumlah aksara yang tinggal setelah semua ruang telah dikeluarkan. Kita sekarang boleh mempermudah formula untuk:

=30-25+1 // returns 6

yang mengembalikan 6 sebagai hasil akhir, bilangan perkataan dalam sel B5.

Berurusan dengan sel kosong

Rumus dalam contoh akan mengembalikan 1 walaupun sel kosong, atau hanya mengandungi ruang. Ini berlaku kerana kita menambah 1 tanpa syarat, setelah menghitung spasi antara perkataan. Untuk mengelakkan masalah ini, anda boleh menyesuaikan formula seperti di bawah:

=LEN(TRIM(B5))-LEN(SUBSTITUTE(B5," ",""))+(LEN(TRIM(B5))>0)

Perhatikan bahawa kami telah menggantikan 1 dengan ungkapan ini:

LEN(TRIM(B5))>0

Kod ini terlebih dahulu memotong B5, kemudian memeriksa panjangnya. Sekiranya B5 mengandungi teks, LEN mengembalikan nombor positif, dan ungkapan mengembalikan BENAR. Sekiranya B5 kosong, atau hanya mengandungi ruang, TRIM mengembalikan rentetan kosong ("") ke LEN. Dalam kes itu, LEN mengembalikan sifar (0) dan ungkapan mengembalikan SALAH. Caranya ialah TRUE dan FALSE menilai masing-masing menjadi 1 dan sifar, ketika terlibat dalam operasi matematik. Hasilnya, ungkapan hanya menambah 1 apabila terdapat teks di B5. Jika tidak, ia menambah sifar (0). Logik ini juga boleh ditulis dengan pernyataan fungsi IF seperti ini:

IF(LEN(TRIM(B5))>0,1,0)

dan hasilnya akan sama. Ungkapan di atas lebih ringkas.

Artikel menarik...