Obsah
Článek se zabývá tím, jak rychle odstranit část textu z buněk aplikace Excel pomocí vzorců a vestavěných funkcí.
V tomto kurzu se podíváme na nejčastější případy odstraňování znaků v aplikaci Excel. Chcete odstranit konkrétní text z více buněk? Nebo snad odstranit první či poslední znak v řetězci? Nebo snad odstranit pouze konkrétní výskyt daného znaku? Ať už je váš úkol jakýkoli, najdete pro něj více než jedno řešení!
Jak odstranit konkrétní znak v aplikaci Excel
Pokud je vaším cílem odstranit z buněk aplikace Excel určitý znak, můžete to provést dvěma snadnými způsoby - pomocí nástroje Najít & amp; Nahradit a vzorce.
Odstranění znaku z více buněk pomocí funkce Najít a nahradit
Vzhledem k tomu, že odstranění znaku není nic jiného než jeho nahrazení ničím, můžete k provedení tohoto úkolu využít funkci Najít a nahradit aplikace Excel.
- Vyberte rozsah buněk, ze kterých chcete odstranit určitý znak.
- Stisknutím klávesové zkratky Ctrl + H otevřete Najít a nahradit dialog.
- V Zjistěte, co zadejte znak.
- Nechte Vyměňte stránky s prázdné pole.
- Klikněte na Vyměňte všechny .
Jako příklad uvádíme, jak můžete odstranit symbol # z buněk A2 až A6.
Výsledkem je odstranění symbolu hash ze všech vybraných buněk najednou a vyskakovací dialogové okno vás informuje o počtu provedených nahrazení:
Tipy a poznámky:
- Tato metoda odstraní znaky přímo ve zdrojových datech. Pokud se výsledek liší od očekávaného, stiskněte klávesy Ctrl + Z, abyste odstranili znaky. vrátit změnu zpět a získat zpět svá původní data.
- Pokud pracujete s abecedními znaky, u kterých záleží na velikosti písmen, klikněte na možnost Možnosti rozšířit Najít a nahradit a pak zaškrtněte políčko Zápasový kufřík pole pro provedení rozlišování velkých a malých písmen vyhledávání.
Odstranění určitého znaku z řetězce pomocí vzorce
Chcete-li odstranit určitý znak z libovolné pozice řetězce, použijte tento obecný vzorec SUBSTITUTE:
SUBSTITUTE( řetězec , znak , "")V našem případě má vzorec tento tvar:
=SUBSTITUTE(A2, "#", "")
Vzorec v podstatě zpracovává řetězec v A2 a každý hash symbol (#) nahrazuje prázdným řetězcem ("").
Zadejte výše uvedený vzorec do B2, zkopírujte jej dolů přes B6 a získáte tento výsledek:
Věnujte prosím pozornost tomu, že SUBSTITUTE vždy vrací hodnotu textový řetězec , a to i v případě, že výsledek obsahuje pouze čísla jako v buňkách B2 a B3 (všimněte si výchozího zarovnání vlevo typického pro textové hodnoty).
Pokud chcete, aby výsledkem byl číslo , pak výše uvedený vzorec zabalte do funkce VALUE takto:
=HODNOTA(SUBSTITUTE(A2, "#", ""))
Nebo můžete provést nějakou matematickou operaci, která nezmění původní hodnotu, například přičíst 0 nebo vynásobit 1:
=SUBSTITUTE(A2, "#", "")*1
Odstranění více znaků najednou
Chcete-li odstranit více znaků pomocí jednoho vzorce, jednoduše vnořte funkce SUBSTITUTE jednu do druhé.
Chcete-li se například zbavit symbolu hash (#), lomítka vpřed (/) a zpětného lomítka (\), použijte tento vzorec:
=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2, "#",""), "/", ""), "\", "")
Tipy a poznámky:
- Funkce SUBSTITUTE je rozlišování velkých a malých písmen , mějte to prosím na paměti při práci s písmeny.
- Pokud chcete mít výsledky jako hodnoty nezávisle na původních řetězcích použijte Vložit speciál - Hodnoty nahradit vzorce jejich hodnotami.
- V situaci, kdy jsou mnoho různých postav odstranit, je mnohem pohodlnější použít vlastní funkci RemoveChars definovanou v LAMBDA.
Jak odstranit určitý text z buňky aplikace Excel
Obě metody, které jsme použili pro odstranění jednoho znaku, si stejně dobře poradí i s posloupností znaků.
Odstranění textu z více buněk
Chcete-li odstranit konkrétní text z každé buňky ve vybraném rozsahu, stiskněte klávesovou zkratku Ctrl + H, čímž zobrazíte Najít a nahradit dialogové okno a poté:
- Zadejte nechtěný text do pole Zjistěte, co box.
- Opusťte Vyměňte stránky s prázdné pole.
Kliknutím na Nahradit vše Tlačítko provede všechny výměny najednou:
Odstranění určitého textu z buňky pomocí vzorce
Chcete-li odstranit část textového řetězce, použijte opět funkci SUBSTITUTE v její základní podobě:
SUBSTITUTE( buňka , text , "")Například pro odstranění podřetězce "mailto:" z buňky A2 je vzorec následující:
=SUBSTITUTE(A2, "mailto:", "")
Tento vzorec přejde na B2 a pak jej přetáhnete dolů přes tolik řádků, kolik potřebujete:
Jak odstranit N-tou instanci určitého znaku
V případě, že chcete odstranit některé výskyt určitého znaku, definujte poslední nepovinný argument funkce SUBSTITUTE. V níže uvedeném obecném vzorci, instance_num určuje, která instance zadaného znaku má být nahrazena prázdným řetězcem:
SUBSTITUTE( řetězec , znak , "", instance_num )Například:
Chcete-li odstranit 1. lomítko v A2, použijte následující vzorec:
=SUBSTITUTE(A2, "/", "", 1)
Pro odstranění druhého znaku lomítka se použije vzorec:
=SUBSTITUTE(A2, "/", "", 2)
Jak odstranit první znak
Chcete-li odstranit první znak z levé strany řetězce, můžete použít jeden z následujících vzorců. Oba dělají totéž, ale různými způsoby.
REPLACE( buňka , 1, 1, "")Přeloženo do lidského jazyka, vzorec říká: v zadané buňce vezměte 1 znak ( num_chars ) z 1. pozice (start_num) a nahradit jej prázdným řetězcem ("").
PRAVDA( buňka , LEN( buňka ) - 1)Zde odečteme 1 znak od celkové délky řetězce, kterou vypočítá funkce LEN. Rozdíl předáme funkci RIGHT, která tento počet znaků z konce vyčlení.
Například pro odstranění prvního znaku z A2 jsou vzorce následující:
=REPLACE(A2, 1, 1, "")
=RIGHT(A2, LEN(A2) - 1)
Na obrázku níže je zobrazen vzorec REPLACE. Vzorec RIGHT LEN poskytne naprosto stejné výsledky.
Odstranění jakéhokoli n znaků od začátku řetězce, viz článek Jak odstranit znaky vlevo v aplikaci Excel.
Jak odstranit poslední znak
Pro odstranění posledního znaku z konce řetězce se použije následující vzorec:
LEVÝ( buňka , LEN( buňka ) - 1)Logika je podobná vzorci RIGHT LEN z předchozího příkladu:
Od celkové délky buňky odečtete 1 a rozdíl předáte funkci LEFT, aby mohla vytáhnout tolik znaků ze začátku řetězce.
Pomocí tohoto vzorce můžete například odstranit poslední znak z A2:
=LEFT(A2, LEN(A2) - 1)
Odstranění jakéhokoli n znaků z konce řetězce, viz článek Jak odstranit znaky zprava v aplikaci Excel.
Odstranění textu za určitým znakem
Pro odstranění všeho, co následuje za daným znakem, se použije obecný vzorec:
LEVÝ( řetězec , HLEDAT( znak , řetězec ) -1)Logika je poměrně jednoduchá: funkce SEARCH vypočítá pozici zadaného znaku a předá ji funkci LEFT, která přinese příslušný počet znaků od začátku. Abychom nevypsali samotný oddělovač, odečteme od výsledku SEARCH 1. V případě, že se nám nepodařilo vypsat znak, který se nám líbí, odečteme od výsledku SEARCH.
Například pro odstranění textu za dvojtečkou (:) je vzorec v B2 následující:
=LEFT(A2, SEARCH(":", A2) -1)
Další příklady vzorců naleznete v části Odstranění textu před nebo za určitým znakem.
Jak odstranit mezery před a za textem v aplikaci Excel
V textových procesorech, jako je Microsoft Word, se někdy před text záměrně přidávají bílé mezery, aby se vytvořil vyvážený a elegantní tok pro oko čtenáře. V programech pro práci s tabulkami se mohou nepozorovaně vloudit úvodní a koncové mezery a způsobit mnoho problémů. Naštěstí má Microsoft Excel speciální funkci TRIM, která odstraňuje přebytečné mezery.
Vzorec pro odstranění přebytečných mezer z buněk je jednoduchý:
=TRIM(A2)
Kde A2 je původní textový řetězec.
Jak vidíte na obrázku níže, odstraní všechny mezery před textem, za textem a mezi slovy/podřetězci s výjimkou jednoho znaku mezery.
Pokud vám tento jednoduchý vzorec nefunguje, je pravděpodobné, že se ve vašem pracovním listu nacházejí nějaké nezalomené mezery nebo netisknutelné znaky.
Chcete-li se jich zbavit, převeďte nezalomené mezery do pravidelných mezer pomocí příkazu SUBSTITUTE:
SUBSTITUTE(A2, CHAR(160), " ")
Kde 160 je kódové číslo znaku bez mezery ( ).
Kromě toho použijte funkci CLEAN k odstranění netisknutelné znaky :
CLEAN(SUBSTITUTE(A2, CHAR(160), " "))
Vložte výše uvedenou konstrukci do funkce TRIM a získáte dokonalý vzorec pro odstranění mezer před/za textem, jakož i nelomených mezer a netisknutelných znaků:
=TRIM(CLEAN(SUBSTITUTE(A2, CHAR(160), " ")))
Další informace naleznete v části Jak odstranit mezery v aplikaci Excel.
Odstranění znaků v aplikaci Excel pomocí funkce Flash Fill
V jednoduchých scénářích vám funkce Flash Fill aplikace Excel může prokázat službu a automaticky odstranit znaky nebo část textu na základě zadaného vzoru.
Řekněme, že máte v jedné buňce jméno a e-mailovou adresu oddělené čárkou. Chcete odstranit vše za čárkou (včetně čárky samotné). Chcete-li to provést, proveďte následující kroky:
- Vložte prázdný sloupec napravo od zdrojových dat.
- Do první buňky nově přidaného sloupce zadejte hodnotu, kterou chcete zachovat (v našem případě jméno).
- Začněte zadávat hodnotu do další buňky. Jakmile Excel určí vzor, zobrazí náhled dat, která se mají vyplnit v následujících buňkách podle stejného vzoru.
- Stisknutím klávesy Enter náhled přijmete.
Hotovo!
Poznámka: Pokud Excel není schopen rozpoznat vzor ve vašich datech, vyplňte několik dalších buněk ručně, abyste získali více příkladů. Také se ujistěte, že je v aplikaci Excel povoleno bleskové vyplňování. Pokud to stále nefunguje, budete se muset uchýlit k jiné metodě.
Speciální nástroje pro odstranění znaků nebo textu v aplikaci Excel
V této závěrečné části představíme vlastní řešení pro odstranění textu z buněk aplikace Excel. Pokud rádi hledáte jednoduché způsoby, jak si poradit se složitými problémy, jistě oceníte praktické nástroje, které jsou součástí sady Ultimate Suite.
Na Data Ablebits na kartě Text existují tři možnosti, jak odstranit znaky z buněk aplikace Excel:
- Specifické znaky a podřetězce
- Postavy v určité pozici
- Duplicitní znaky
Odstranění konkrétní znak nebo podřetězec z vybraných buněk, postupujte tímto způsobem:
- Klikněte na Odstranění adresy > Odstranění znaků .
- Vyberte možnost, která nejlépe vyhovuje vašim potřebám.
- Zaškrtněte nebo zrušte zaškrtnutí políčka Rozlišování velkých a malých písmen box.
- Hit Odstranění adresy .
Níže uvádíme několik příkladů, které pokrývají nejtypičtější scénáře.
Odstranění konkrétního znaku
Chcete-li odstranit určitý znak (znaky) z více buněk najednou, vyberte možnost Odstranění vlastních znaků .
Jako příklad uvedeme odstranění všech výskytů velkých písmen A a B z rozsahu A2:A4:
Odstranění předdefinované sady znaků
Chcete-li odstranit určitou sadu znaků, vyberte Odstranění znakových sad a poté vyberte jednu z následujících možností:
- Netisknutelné znaky - odstraní kterýkoli z prvních 32 znaků 7bitové sady ASCII (kódové hodnoty 0 až 31), včetně znaku tabulátoru, zalomení řádku atd.
- Textové znaky - odstraní text a ponechá čísla.
- Číselné znaky - odstraní čísla z alfanumerických řetězců.
- Symboly a interpunkční znaménka - odstraňuje speciální symboly a interpunkční znaménka, jako je tečka, otazník, vykřičník, čárka atd.
Odstranění části textu
Chcete-li odstranit část řetězce, zvolte možnost Odstranění podřetězce možnost.
Například pro extrakci uživatelských jmen z adres Gmail odstraňujeme podřetězec "@gmail.com":
To je postup, jak odstranit text a znaky z buněk aplikace Excel. Děkuji vám za přečtení a těším se na vás na našem blogu příští týden!
Dostupné soubory ke stažení
Odstranění znaků v aplikaci Excel - příklady (.xlsm soubor)
Ultimate Suite - zkušební verze (.exe soubor)