Kako postići broj riječi u Excelu (pomoću jednostavnih formula)

Želite li dobiti broj riječi u Excelu? Vjerovali ili ne, Excel nema ugrađeni brojač riječi.

Ali ne brinite.

Zgodna hrpa excel funkcija (ili malo VBA -a ako vam se sviđa) to lako mogu učiniti za vas.

U ovom vodiču pokazat ću nekoliko načina brojanja riječi u Excelu pomoću jednostavnih formula. Na kraju će se pokriti i tehnika stvaranja prilagođene formule pomoću VBA -e koja će vam brzo dati broj riječi bilo kojeg teksta u bilo kojoj ćeliji.

Formula za dobivanje broja riječi u Excelu

Prije nego što vam dam točnu formulu, prijeđimo na brzinu logike kako bismo dobili broj riječi.

Pretpostavimo da imam rečenicu kao što je prikazano u nastavku za koju želim dobiti broj riječi.

Iako Excel ne može izbrojati broj riječi, može izbrojati broj razmaka u rečenici.

Dakle, da bismo dobili broj riječi, možemo brojati ove razmake umjesto riječi i zbroju dodati 1 (jer bi broj razmaka bio jedan manji od broja riječi).

Sada mogu postojati dvije mogućnosti:

  1. Između svake riječi postoji jedan razmak
  2. Između riječi postoji više razmaka.

Pa da vidimo kako izbrojiti ukupan broj riječi u svakom slučaju.

Primjer 1 - Kada postoji jedan razmak između riječi

Recimo da imam sljedeći tekst u ćeliji A1: Pustite mačku iz vreće

Za prebrojavanje broja riječi evo formule koju bih upotrijebio:

= LEN (A1) -LEN (ZAMJENA (A1, "", ""))+1

Time bi se vratilo "7".

Evo kako ova formula funkcionira:

  • LEN (A1) - Ovaj dio formule vraća 26, što je ukupan broj znakova u tekstu u ćeliji A1. Uključuje znakove teksta kao i razmake.
  • ZAMJENA (A1, ”“, ””) - Ovaj dio formule uklanja sve razmake iz teksta. Dakle, rezultat bi u ovom slučaju bio Pustitekatuto vrećicu.
  • LEN (ZAMJENA (A1, ”“,“”) - Ovaj dio formule broji ukupan broj znakova u tekstu koji nema razmaka. Dakle, rezultat ovoga bio bi 20.
  • LEN (A1) -LEN (ZAMJENA (A1, ”“,“”)) - To bi oduzelo duljinu teksta bez razmaka od duljine teksta s razmacima. U gornjem primjeru bilo bi 26-20 što je 6.
  • = LEN (A1) -LEN (ZAMJENA (A1, ”“,“”))+1 - Ukupnom rezultatu dodajemo 1 jer je ukupan broj razmaka jedan manji od ukupnog broja riječi. Na primjer, postoji jedan razmak u dvije riječi i dva razmaka u tri riječi.

Ovo dobro funkcionira ako imate samo jedan razmak između riječi. Ali ne bi funkcioniralo ako imate više razmaka između riječi.

U tom slučaju upotrijebite formulu u sljedećem primjeru.

Primjer 2: Kad postoji više razmaka između riječi

Recimo da imate sljedeći tekst: Pustite mačku iz vreće

U ovom slučaju postoji više razmaka između riječi.

Da bismo dobili broj riječi, prvo moramo ukloniti sve dodatne razmake (tako da između dvije riječi postoji samo jedan znak razmaka), a zatim prebrojiti ukupni broj razmaka.

Evo formule koja će nam dati pravi broj riječi:

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

Ovo je slična formula korištena u gornjem primjeru, s neznatnom promjenom - ovdje smo također koristili funkciju TRIM.

Excel TRIM funkcija uklanja sve vodeće, završne i dodatne razmake (osim pojedinačnih razmaka između riječi).

Ostatak formule radi isto (kao što je objašnjeno u primjeru 1).

Napomena: Ako nema razmaka između riječi, smatra se jednom riječju.

Korištenje prilagođene funkcije VBA za brojanje riječi u Excelu

Iako gornje formule odlično funkcioniraju, ako imate potrebu često izračunavati broj riječi, možete upotrijebiti VBA za stvaranje prilagođene funkcije (koja se naziva i korisnički definirana funkcija).

Prednost korištenja prilagođene funkcije je u tome što je možete stvoriti jednom, a zatim koristiti kao bilo koju drugu redovitu Excel funkciju. Dakle, umjesto da stvarate dugu složenu formulu kao što smo to učinili u prethodna dva primjera, imate jednostavnu formulu koja uzima referencu ćelije i trenutno vam daje broj riječi.

Evo koda koji će stvoriti ovu prilagođenu funkciju za dobivanje broja riječi u Excelu.

Funkcija WordCount (CellRef kao raspon) Dim TextStrng As String Dim Result () As String Result = Split (WorksheetFunction.Trim (CellRef.Text), "") WordCount = UBound (Result ()) + 1 End Funkcija

Nakon stvaranja možete koristiti funkciju WordCount kao i bilo koju drugu redovitu funkciju Excel.

U gornjem kodu za prilagođenu funkciju upotrijebio sam funkciju TRIM radnog lista za uklanjanje svih početnih, zadnjih i dvostrukih razmaka između riječi. Time se osigurava da sve tri ćelije daju isti rezultat jer se broje samo riječi, a ne dvostruki razmaci.

Kako funkcionira ova formula:

Gornji VBA kôd prvo koristi funkciju TRIM za uklanjanje svih početnih, zadnjih i dvostrukih razmaka iz tekstualnog niza u referenciranoj ćeliji.

Nakon što očisti niz, koristi funkciju SPLIT u VBA -i za podjelu tekstualnog niza na temelju razdjelnika, za koji smo naveli da je znak razmaka. Tako je svaka riječ odvojena pohranjena kao zasebna stavka u varijabli Result.

Zatim koristimo funkciju UBOUND za brojanje ukupnog broja stavki pohranjenih u varijablama Rezultat. Budući da VBA ima bazu 0, moramo dodati 1 da bismo dobili ukupan broj riječi.

To znači da Result (0) sprema prvu riječ, Result (1) drugu riječ itd. Budući da ovo brojanje počinje od 0, moramo dodati 1 da bismo dobili pravi broj riječi.

Gdje staviti ovaj kod?

Prilikom stvaranja prilagođene funkcije kôd morate staviti u VB Editor radne knjige (koji je stražnji kraj radne knjige u koji možete pisati kôd za automatizaciju zadataka i stvaranje prilagođenih funkcija).

U nastavku su navedeni koraci za unos koda za funkciju "GetNumeric" u radnu knjigu.

  1. Idite na karticu Developer.
  2. Pritisnite opciju Visual Basic. Ovo će otvoriti VB editor u pozadini.
  3. U oknu Project Explorer u VB Editoru desnom tipkom miša kliknite bilo koji objekt radne knjige u koji želite umetnuti kôd. Ako ne vidite Project Explorer, idite na karticu View i kliknite na Project Explorer.
  4. Idite na Umetni i kliknite na Modul. Ovo će umetnuti objekt modula u vašu radnu knjigu.
  5. Kopirajte i zalijepite kôd u prozor modula.

Nakon što ste kopirali kôd u kodni prozor, možete se vratiti na radni list i koristiti ovu funkciju kao i bilo koju drugu uobičajenu Excel funkciju.

Samo upišite = Riječ i prikazat će vam formulu na popisu.

Potreban je jedan argument, referenca ćelije i trenutno vam daje broj riječi u njemu.

wave wave wave wave wave