Excel

Spočítajte všetky slová v bunke

Count Total Words Cell

Vzorec programu Excel: Spočítajte celkový počet slov v bunkeGenerický vzorec | _+_ | Zhrnutie

Na spočítanie celkového počtu slov v bunke môžete použiť vzorec založený na znaku LEN a NÁHRADA funkcií s pomocou Funkcia TRIM . V uvedenom príklade vzorec v bunke C5, skopírovaný nadol, je:



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

Vzorec vráti počet slov v bunke B5.

ako sa predvolene vkladajú grafy do pracovného hárka?
Vysvetlenie

Excel nemá vyhradenú funkciu na počítanie slov v bunke. S trochou vynaliezavosti však môžete taký vzorec vytvoriť pomocou funkcií SUBSTITUT a LEN s pomocou spoločnosti TRIM, ako je to znázornené na príklade. Na vysokej úrovni tento vzorec používa funkciu LEN na spočítanie počtu znakov v bunke s medzerami a bez medzier a potom pomocou rozdielu zistí počet slov. Funguje to, pretože počet slov sa rovná počtu medzier + 1, pokiaľ je medzi každým slovom jedna medzera.





Prvá časť vzorca počíta s odstránením medzery medzi znakmi v bunke B5:

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

Vnútri LEN, Funkcia TRIM najskôr odstráni nadbytočné medzery medzi slovami alebo na začiatku alebo na konci textu. To je dôležité, pretože akékoľvek medzery navyše zmenia počet slov. V tomto prípade nie sú žiadne medzery navyše, takže funkcia TRIM vráti pôvodný text priamo do súboru LEN function , ktorá vráti 30:



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

V tomto bode máme:

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

Ďalej použijeme SUBSTITUTE (funkcia) ak chcete z textu odstrániť všetky medzery:

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

Všimnite si, že SUBSTITUTE je nakonfigurovaný tak, aby hľadal medzerník ('') a nahradil ho prázdny reťazec (''). Štandardne nahradí SUBSTITUTE všetky medzery. Výsledok sa doručí priamo do funkcie LEN, ktorá vráti počet:

vzorec programu Excel na výpočet odpracovaných hodín
 
 SUBSTITUTE (B5,' ','') // strip all space

LEN vráti 25, počet zostávajúcich znakov po odstránení všetkého priestoru . Teraz môžeme vzorec zjednodušiť na:

 
 LEN ('AllQuietontheWesternFront') // returns 25

ktorý vráti 6 ako konečný výsledok, počet slov v bunke B5.

Zaobchádzanie s prázdnymi bunkami

Vzorec v príklade vráti hodnotu 1, aj keď je bunka prázdna alebo obsahuje iba medzeru. Stáva sa to preto, že pridávame 1 bezpodmienečne , po spočítaní medzier medzi slovami. Aby ste sa tomuto problému vyhli, môžete prispôsobiť vzorec nasledujúcim spôsobom:

 
=30-25+1 // returns 6

Všimnite si, že sme nahradili 1 týmto výrazom:

ako vložiť riadok do skratky programu Excel
 
= LEN ( TRIM (B5))- LEN ( SUBSTITUTE (B5,' ',''))+( LEN ( TRIM (B5))>0)

Tento kód najskôr orezá B5 a potom skontroluje dĺžku. Ak B5 obsahuje text, funkcia LEN vráti kladné číslo a výraz vráti hodnotu TRUE. Ak je B5 prázdny alebo obsahuje iba medzeru, TRIM vráti prázdny reťazec ('') do LEN. V takom prípade LEN vráti nulu (0) a výraz vráti hodnotu FALSE. Ide o to, že ak sú zapojené do akejkoľvek matematickej operácie, TRUE a FALSE vyhodnotia na 1 a nulu. Výsledkom je, že výraz pridá iba 1, ak je v B5 text. V opačnom prípade pridá nulu (0). Túto logiku je možné napísať aj pomocou súboru IF funkcia vyhlásenie takto:

 
 LEN ( TRIM (B5))>0

a výsledok by bol rovnaký. Vyššie uvedený výraz je jednoducho kompaktnejší.

Prílohy Súbor spočítajte celkový počet slov v bunke.xlsx Autor Dave Bruns


^