Obsah
Výukový program vysvětluje, jak počítat znaky v aplikaci Excel. Naučíte se vzorce pro získání celkového počtu znaků v rozsahu a počítání pouze konkrétních znaků v buňce nebo v několika buňkách.
V předchozím kurzu jsme se seznámili s funkcí LEN aplikace Excel, která umožňuje spočítat celkový počet znaků v buňce.
Vzorec LEN je užitečný sám o sobě, ale ve spojení s dalšími funkcemi, jako jsou SUM, SUMPRODUCT a SUBSTITUTE, dokáže řešit mnohem složitější úlohy. V dalším pokračování tohoto kurzu se blíže podíváme na několik základních i pokročilých vzorců pro počítání znaků v Excelu.
Jak spočítat všechny znaky v rozsahu
Pokud jde o počítání celkového počtu znaků v několika buňkách, napadne vás ihned řešení spočívající v tom, že zjistíte počet znaků pro každou buňku a poté tato čísla sečtete:
=LEN(A2)+LEN(A3)+LEN(A4)
Nebo
=SOUČET(LEN(A2),LEN(A3),LEN(A4))
Výše uvedené vzorce mohou fungovat dobře pro malý rozsah. Pro počítání celkového počtu znaků ve větším rozsahu bychom měli vymyslet něco kompaktnějšího, např. funkci SUMPRODUCT, která násobí pole a vrací součet součinů.
Zde je obecný vzorec aplikace Excel pro počítání znaků v rozsahu:
=SOUČIN(LEN( rozsah ))A váš skutečný vzorec může vypadat podobně:
=SOUČIN(LEN(A1:A7))
Dalším způsobem, jak spočítat znaky v rozsahu, je použití funkce LEN v kombinaci s funkcí SUM:
=SOUČET(LEN(A1:A7))
Na rozdíl od funkce SUMPRODUCT funkce SUM ve výchozím nastavení nepočítá pole a je třeba stisknout klávesy Ctrl + Shift + Enter, aby se z ní stal vzorec pro pole.
Jak ukazuje následující snímek obrazovky, vzorec SUMA vrátí stejný celkový počet znaků:
Jak tento vzorec pro počítání znaků rozsahu funguje
Jedná se o jeden z nejjednodušších vzorců pro počítání znaků v aplikaci Excel. Funkce LEN vypočítá délku řetězce pro každou buňku v zadaném rozsahu a vrátí je jako pole čísel. A poté funkce SUMPRODUCT nebo SUM tato čísla sečte a vrátí celkový počet znaků.
Ve výše uvedeném příkladu se sečte pole 7 čísel, která představují délky řetězců v buňkách A1 až A7:
Poznámka: Věnujte prosím pozornost tomu, že funkce LEN aplikace Excel počítá absolutně. všechny znaky v každé buňce včetně písmen, číslic, interpunkčních znamének, speciálních symbolů a všech mezer (počáteční, koncové a mezery mezi slovy).
Jak počítat konkrétní znaky v buňce
Někdy můžete místo počítání všech znaků v buňce potřebovat počítat pouze výskyty určitého písmene, čísla nebo speciálního symbolu.
Chcete-li spočítat, kolikrát se daný znak objeví v buňce, použijte funkci LEN spolu s funkcí SUBSTITUTE:
=LEN( buňka )-LEN(SUBSTITUTE( buňka , znak ,""))Pro lepší pochopení vzorce si vezměte následující příklad.
Předpokládejme, že vedete databázi dodaných položek, kde každý typ položky má svůj jedinečný identifikátor. A každá buňka obsahuje několik položek oddělených čárkou, mezerou nebo jiným oddělovačem. Úkolem je spočítat, kolikrát se daný jedinečný identifikátor objeví v každé buňce.
Předpokládáme-li, že seznam dodaných položek je ve sloupci B (začínajícím B2) a počítáme počet výskytů "A", je vzorec následující:
=LEN(B2)-LEN(SUBSTITUTE(B2, "A",""))
Jak tento vzorec pro počítání znaků v aplikaci Excel funguje
Abychom pochopili logiku vzorce, rozdělme si ho na menší části:
- Nejprve spočítejte celkovou délku řetězce v B2:
LEN(B2)
SUBSTITUTE(B2, "A","")
LEN(SUBSTITUTE(B2, "A",""))
Výsledkem je počet "odstraněných" znaků, který se rovná celkovému počtu výskytů daného znaku v buňce.
Namísto zadávání znaku, který chcete počítat ve vzorci, jej můžete zadat do některé buňky a poté na tuto buňku ve vzorci odkázat. Tímto způsobem budou moci uživatelé počítat výskyt jakéhokoli jiného znaku, který do této buňky zadají, aniž by museli zasahovat do vašeho vzorce:
Poznámka: Funkce SUBSTITUTE aplikace Excel rozlišuje malá a velká písmena, a proto i výše uvedený vzorec rozlišuje malá a velká písmena. Například na výše uvedeném snímku obrazovky obsahuje buňka B3 3 výskyty znaku "A" - dva s velkými písmeny a jeden s malými písmeny. Vzorec započítal pouze velká písmena, protože jsme funkci SUBSTITUTE zadali znak "A".
Vzorec Excelu pro počítání konkrétních znaků v buňce bez ohledu na velikost písmen
Pokud potřebujete počítat znaky bez rozlišení velkých a malých písmen, vložte do funkce SUBSTITUTE funkci UPPER, která před spuštěním substituce převede zadaný znak na velká písmena. A nezapomeňte do vzorce zadat znak s velkými písmeny.
Chcete-li například spočítat položky "A" a "a" v buňce B2, použijte tento vzorec:
=LEN(B2)-LEN(SUBSTITUTE(UPPER(B2), "A","))
Dalším způsobem je použití vnořených funkcí Substitute:
=LEN(B2)-LEN(SUBSTITUTE(SUBSTITUTE (B2, "A",""), "a","")
Jak vidíte na následujícím snímku obrazovky, oba vzorce bezchybně počítají výskyty velkých a malých písmen zadaného znaku:
V některých případech můžete potřebovat spočítat mnoho různých znaků v tabulce, ale nemusíte chtít pokaždé upravovat vzorec. V takovém případě vnořte jednu funkci Substitute do druhé, zadejte znak, který chcete spočítat, do některé buňky (v tomto příkladu D1) a převeďte hodnotu této buňky na velká a malá písmena pomocí funkcí UPPER a LOWER:
=LEN(B2)-LEN(SUBSTITUTE(SUBSTITUTE(B2, UPPER($D$1), ""), LOWER($D$1),""))
Případně převeďte zdrojovou buňku i buňku obsahující znak buď na velká, nebo malá písmena. Například:
=LEN(B2)-LEN(SUBSTITUTE(UPPER(B2), UPPER($C$1),""))
Výhodou tohoto přístupu je, že bez ohledu na to, zda je v odkazované buňce zadán velký nebo malý znak. vzorec pro počítání znaků bez ohledu na velikost písmen vrátí správný počet:
Počítání výskytů určitého textu nebo podřetězce v buňce
Pokud chcete spočítat, kolikrát konkrétní kombinace znaků (tj. určitý text nebo podřetězec) v dané buňce, např. "A2" nebo "SS", pak vydělte počet znaků vrácených výše uvedenými vzorci délkou podřetězce.
Rozlišování velkých a malých písmen vzorec:
=(LEN(B2)-LEN(SUBSTITUTE(B2, $C$1,"")))/LEN($C$1)
Nerozlišování velkých a malých písmen vzorec:
=(LEN(B2)-LEN(SUBSTITUTE(LOWER(B2),LOWER($C$1),"")))/LEN($C$1)
Kde B2 je buňka obsahující celý textový řetězec a C1 je text (podřetězec), který chcete spočítat.
Podrobné vysvětlení vzorce naleznete v části Jak spočítat konkrétní text / slova v buňce.
Jak počítat konkrétní znaky v rozsahu
Nyní, když znáte vzorec Excelu pro počítání znaků v buňce, možná jej budete chtít dále vylepšit, abyste zjistili, kolikrát se určitý znak vyskytuje v rozsahu. Za tímto účelem převezmeme vzorec Excelu LEN pro počítání určitého znaku v buňce, o kterém jsme hovořili v předchozím příkladu, a vložíme jej do funkce SUMPRODUCT, která umí pracovat s poli:
SUMPRODUCT(LEN( rozsah )-LEN(SUBSTITUTE( rozsah , znak ,"")))V tomto příkladu má vzorec následující tvar:
=SOUČIN(LEN(B2:B8)-LEN(SUBSTITUTE(B2:B8, "A",")))
A zde je další vzorec pro počítání znaků v rozsahu aplikace Excel:
=SOUČET(LEN(B2:B8)-LEN(SUBSTITUTE(B2:B8, "A","")))
Oproti prvnímu vzorci je nejzřetelnějším rozdílem použití SUM místo SUMPRODUCT. Dalším rozdílem je, že vyžaduje stisknutí kláves Ctrl + Shift + Enter, protože na rozdíl od SUMPRODUCT, který je určen ke zpracování polí, SUM umí pracovat s poli pouze při použití v souboru vzorec pole .
Pokud nechcete znak ve vzorci zadávat natvrdo, můžete jej samozřejmě napsat do některé buňky, například D1, a na tuto buňku se ve vzorci pro počet znaků odkázat:
=SOUČIN(LEN(B2:B8)-LEN(SUBSTITUTE(B2:B8, D1,")))
Poznámka: V situacích, kdy počítáte výskyty určitého parametru. podřetězec v rozsahu (např. příkazy začínající "KK" nebo "AA"), je třeba vydělit počet znaků délkou podřetězce, jinak se bude počítat každý znak v podřetězci zvlášť. Například:
=SOUČET((LEN(B2:B8)-LEN(SUBSTITUTE(B2:B8, D1, ""))) / LEN(D1))
Jak tento vzorec pro počítání znaků funguje
Jak si možná pamatujete, funkce SUBSTITUTE se používá k nahrazení všech výskytů zadaného znaku ("A" v tomto příkladu) prázdným textovým řetězcem ("").
Poté textový řetězec vrácený funkcí SUBSTITUTE předáme funkci LEN aplikace Excel, aby vypočítala délku řetězce bez písmen A. A pak tento počet znaků odečteme od celkové délky textového řetězce. Výsledkem těchto výpočtů je pole počtů znaků, přičemž v každé buňce je jeden počet znaků.
Nakonec funkce SUMPRODUCT sečte čísla v poli a vrátí celkový počet zadaných znaků v rozsahu.
Vzorec pro počítání konkrétních znaků v rozsahu, který nerozlišuje velká a malá písmena
Již víte, že funkce SUBSTITUTE rozlišuje velká a malá písmena, a proto i náš vzorec Excelu pro počet znaků rozlišuje velká a malá písmena.
Chcete-li, aby vzorec ignoroval velká a malá písmena, postupujte podle přístupů předvedených v předchozím příkladu: Vzorec pro počítání konkrétních znaků v buňce bez ohledu na velká a malá písmena.
Konkrétně můžete použít jeden z následujících vzorců pro počítání konkrétních znaků v rozsahu ignorujícím případ:
- Použijte funkci UPPER a zadejte znak velkými písmeny:
=SOUČIN(LEN(B2:B8) - LEN(SUBSTITUTE(UPPER(B2:B8), "A",")))
- Použijte vnořené funkce SUBSTITUTE:
=SUMPRODUCT(LEN(B2:B8) - LEN(SUBSTITUTE(SUBSTITUTE((B2:B8), "A","), "a","))))
- Použijte funkce UPPER a LOWER, napište do některé buňky buď velké, nebo malé písmeno a ve vzorci se na tuto buňku odkažte:
=SOUČIN(LEN(B2:B8) - LEN(SUBSTITUTE(SUBSTITUTE((B2:B8), UPPER($E$1), ""), LOWER($E$1),""))))
Níže uvedený snímek obrazovky ukazuje poslední vzorec v akci:
Tip. Počítání výskytů položky konkrétní text (podřetězce) v rozsahu, použijte vzorec uvedený v části Jak spočítat konkrétní text / slova v rozsahu.
Takto můžete počítat znaky v aplikaci Excel pomocí funkce LEN. Pokud chcete vědět, jak počítat slova, a ne jednotlivé znaky, najdete několik užitečných vzorců v našem dalším článku, zůstaňte s námi!
Mezitím si můžete stáhnout ukázkové sešity se vzorcem pro počítání znaků, o kterém pojednává tento návod, a podívat se na seznam souvisejících zdrojů na konci stránky. Děkuji vám za přečtení a doufám, že se brzy uvidíme!