zpět na výpis    domů » excel » Funkce DÉLKA(), CONCATENATE() a ZLEVA()

Funkce DÉLKA(), CONCATENATE() a ZLEVA()

Publikováno: 1.1.2019

Funkce DÉLKA(), CONCATENATE() a ZLEVA()

Představíme si textové funkce, které umí vrátit počet znaků textového řetězce, část textového řetězce nebo spojují obsah několika buněk do jedné buňky a požadované podoby.

Textové funkce si ukážeme na jednoduchých příkladech v kombinaci s logickou funkcí KDYŽ() a textovou funkcí HLEDAT().

Funkce DÉLKA()

Funkce vrací počet znaků textového řetězce. Má jeden jediný argument a tím je právě vybraný řetězec. Přestože se jedná o textovou funkci, lze jí použít i na číselné hodnoty.

=DÉLKA(text)

Anglický ekvivalent funkce je LEN(text). Funkce Len() je také k dispozici v jazyce VBA. Funkci lze použít například v situaci, kdy se podle počtu znaků mají vykonat rozdílné operace.

Základní použití funkce

Na následujícím obrázku je základní použití funkce. Funkce vrací počet znaků řetězců ve sloupci B. Jako znak počítá i mezeru.

Základní použití funkce DÉLKA()

Kombinace s funkcí KDYŽ()

Funkce DÉLKA() nemá sama o sobě příliš mnoho využití. Používá se většinou v kombinaci s jinou funkcí. Typickým příkladem je testování obsahu buňky pomocí logické funkce KDYŽ(). Obsah buněk ve sloupci B otestujeme pomocí následujícího zápisu

=KDYŽ(DÉLKA(text) > 0;"ok";"prázdná")

Zápis říká: je-li buňka neprázdná (obsahuje nějaký znak), funkce vrátí text OK, jinak vrátí text PRÁZDNÁ.

Kombinace funkcí DÉLKA() a KDYŽ()

Funkce CONCATENATE()

Funkce spojí obsah několika buněk do jedné buňky. Funkce má tolik argumentů, kolik chcete spojit řetězců. Maximálně jich však může být 255.

=CONCATENATE(text1; [text2]; ...;[text255])

Základní použití funkce

Základní použití funkce je stejně jednoduché jako v předchozím případě. Ve sloupci E je pomocí funkce CONCATENATE() pospojován obsah ve sloupcích B, C a D.

Základní použití funkce CONCATENATE()

Funkce ZLEVA()

Funkce vrací požadovaný počet znaků od počátku řetězce (tedy zleva). Funkce má dva argumenty, kterými jsou řetězec a počet znaků.

=ZLEVA(text; [znaky])

Anglický ekvivalent funkce je LEFT(text; [num_chars]). Funkce je také k dispozici v jazyce VBA. Příbuzné excelovské funkce jsou funkce ZPRAVA() a ČÁST().

Základní použití funkce

Funkce vrátí požadovaný počet znaků (sloupec C) řetězců uvedených ve sloupci B.

Základní použití funkce ZLEVA()

Kombinace s funkcí HLEDAT()

Typickým příkladem spojení funkce ZLEVA() je s funkcí HLEDAT(). Funkce HLEDAT() vyhledá první hledaný znak v řetězci a vrátí jeho pozici.

V následujícím příkladě vyhledáme pozici mezery, čímž získáme první slovo spojení ze sloupce B.

=ZLEVA(text; HLEDAT(" ";text))

Kombinace funkcÍ ZLEVA() a HLEDAT()

Počty znaků vrácených řetězců ve sloupci C jsou včetně mezer (sloupec E). Proto upravíme vzorec o mínus jedničku, čímž se zbavíme nepotřebné mezery.

=ZLEVA(text; HLEDAT(" ";text)-1)

Kombinace funkcÍ ZLEVA() a HLEDAT()

Užití funkcí v praxi

K dispozici máme data od roku 2004 ve formátu RRMM (R=rok, M=měsíc). Některá data jsou třímístná a některá čtyřmístná. Data mohou mít například charakter data expirace apod., která si potřebujeme seřadit podle roku. Úkolem je získat z dat pouze rok (tj. RR) a transformovat do formátu RRRR (tj. 20XX).

=KDYŽ(DÉLKA(text)=3; CONCATENATE(200;ZLEVA((text;1)); CONCATENATE(20;ZLEVA(text;2)))

Slovně okomentovaný zápis v modrém boxu má následující význam: má-li řetězec 3 znaky, funkce ZLEVA() vrátí pouze 1 znak testovaného řetězce zleva a funkce CONCATENATE() jej spojí s 200, jinak funkce ZLEVA() vrátí 2 znaky a funkce CONCATENATE() je spojí s 20. Výsledek je ve sloupci E.

Kombinace funkcí DÉLKA(), CONCATENATE() a ZLEVA()

Líbil se vám článek? A chcete se vědět o každém dalším?

Sledujte:

Nahoru