S tímto tématem se setkáte na našich kurzech ExcelTown.
Aktuálně: kurzy můžete absolvovat jak online, tak prezenčně.

Funkce DÉLKA slouží k tomu, abychom zjistili délku textového řetězce v textu.

Funguje velmi jednoduše. Pokud je např. v buňce A1 text “aabbcc”, pak funkce DÉLKA zapsaná takto:

  • =DÉLKA(“A1”)

zobrazí výsledek šestku. Protože v buňce A1 je šest znaků.

Kombinace s funkcí DOSADIT / SUBSTITUTE

Tato funkce se dá zajímavě využít dohromady s funkcí DOSADIT / SUBSTITUTE v případě, že chceme zjistit, jestli se v textu vyskytuje určitý znak nebo znaky.

Pokud bychom chtěli například zjistit počet znaků “x” v textu “axbxcdefx”, definovali bychom funkci takto:

  • =DÉLKA(A1)-DÉLKA(DOSADIT(A1;”x”;””))

Ten zápis má docela vtipnou logiku. Nejprve zjistíme, jak dlouhý je původní text. Pak odečteme, jak dlouhý by ten text byl, pokud bychom všechny znaky “x” odstranili (nahradili prázdnými uvozovkami). Číslo, které vyjde, nám sděluje, kolik znaků “x” v textu bylo.

delka

Je také možnost zkombinovat s funkcí KDYŽ, např. takto:

  • =KDYŽ(DÉLKA(A1)-DÉLKA(DOSADIT(A1;”x”;””))>0;”text obsahuje alespoň jedno písmeno x”;”text neobsahuje žádné písmeno x”)

resp. i zjednodušeně:

  • =KDYŽ(DÉLKA(A1)-DÉLKA(DOSADIT(A1;”x”;””));”text obsahuje alespoň jedno písmeno x”;”text neobsahuje žádné písmeno x”)

Použití funkce DÉLKA pro rozeznání prázdných buněk

Excel má sice na rozeznávání prázdných buněk funkci JE.PRÁZDNÉ / ISEMPTY. Ta má ale tu nevýhodu, že jako prázdnou nerozezná buňku, ve které vzniká prázdná hodnota vzorcem podobným tomuto, tedy s využitím prázdných uvozovek:

  • =KDYŽ(něco;něco;””) 

Proto si můžeme pomoci tak, že v buňce vyhodnocujeme délku textu, a když vyjde nula, prohlásíme ji za prázdnou. Tedy:

  1. =KDYŽ(DÉLKA(A1)>0;”buňka není prázdná”;”buňka je prázdná”)

resp. i zjednodušeně:

  • =KDYŽ(DÉLKA(A1);”buňka není prázdná”;”buňka je prázdná”)

S tímto tématem se setkáte na našich kurzech ExcelTown.
Aktuálně: kurzy můžete absolvovat jak online, tak prezenčně.

1 Komentář

  1. Je možné tuto nebo jinou podobnou funkci pouzit na vice bunek?
    =KDYŽ(DÉLKA(A1:A6);”buňka není prázdná”;”buňka je prázdná”) mi nefunguje

  2. Zdravím a děkuji – vymýšlel jsem k dosažení popsaného cíle kde co, ale toto je fakt úchvatně geniálně jednoduché!!!

  3. Prosím o opravu hned v úvodu
    Popsaná syntaxe [ =DÉLKA(“A1”) ] nemůže vrátit hodnotu [ 6 ]. Vygenerovaná hodnota musí být [ 2 ], neboť řetězec [ “A1” ] zadaný ve vzorci obsahuje pouze dva znaky.
    Pokud chceme počet znaků v buňce [ A1 ], je třeba do závorky ve vzorci zadat souřadnice buňky jako odkaz, nikoli jako řetězec samotný,
    tedy: [ =DÉLKA(A1) ]
    Rozdíl v zápisu s uvozovkami a bez uvozovek je dost podstatný pro výslednou vrácenou hodnotu.

Komentáře není možné přidávat