Excel vzorec: Extrahování n-tého slova z textového řetězce -

Obecný vzorec

=TRIM(MID(SUBSTITUTE(A1," ",REPT(" ",LEN(A1))), (N-1)*LEN(A1)+1, LEN(A1)))

souhrn

Pokud potřebujete získat n-té slovo v textovém řetězci (tj. Větu, frázi nebo odstavec), můžete tak učinit pomocí chytrého (a zastrašujícího) vzorce, který kombinuje 5 funkcí aplikace Excel: TRIM, MID, SUBSTITUTE, REPT a LEN.

Vysvětlení

Tento vzorec v jádru přebírá textový řetězec s mezerami a „zaplavuje“ jej dalšími mezerami tak, že každý prostor nahradí několika mezerami pomocí SUBSTITUTE a REPT. Počet použitých mezer je založen na celkové délce původního textu.

Výsledek si v tomto okamžiku můžete představit jako „ostrovy“ slov plujících v moři vesmíru :)

Potom vzorec pomocí funkce MID extrahuje požadované slovo. Výchozí bod je zpracován s:

(N-1)*LEN(A1)+1

Celkový počet extrahovaných znaků se rovná délce celého textového řetězce.

V tomto okamžiku máme slovo, které chcete, obklopené mezerami. Nakonec funkce TRIM odřízne všechny mezerové znaky a vrátí pouze slovo.

Tento vzorec se mi opravdu líbí, protože ukazuje, čeho můžete dosáhnout pomocí nějakého kreativního myšlení.

Text do sloupců

Nezapomeňte, že Excel má vestavěnou funkci Text do sloupců, která může rozdělit text podle oddělovače podle vašeho výběru. Pokud potřebujete získat 3. slovo z mnoha textových řetězců, může být tento vzorec pohodlnější (a dynamičtější), ale Text na sloupce je v mnoha situacích stále užitečný.

Dobré odkazy

Efektivní způsob extrakce n-tého slova z řetězce (fórum MrExcel)

Zajímavé články...