Vyhledávací funkce v Microsoft Excel

Do kategorie vyhledávacích funkcí v Microsoft Excel patří několik funkcí, které slouží k vyhledávání údajů v datové tabulce. Funkce naleznete ve skupině „Vyhledávací“ nebo na kartě Vzorce v tlačítku Vyhl. a ref.

Funkce SVYHLEDAT

Funkce slouží k vyhledávání potřebné hodnoty v tabulce, orientované ve sloupcích. Vyhledávání se provádí podle hodnot v prvém sloupci tabulky. Hodnoty v prvém sloupci mohou být číselné, datumové nebo textové. Tabulka musí být setříděna vzestupně podle prvého sloupce. Funkce má následující parametry:

  • Hledat je hodnota hledaná v prvém sloupci. Můžete ji zapsat přímo do parametru nebo použít odkaz na buňku s touto hodnotou.
  • Tabulka je oblast celé datové tabulky včetně prvého sloupce. Jednotlivé sloupce nesmí mít nadpisy. Hledání se tedy provádí i v prvém řádku tabulky.
  • Sloupec je pořadové číslo sloupce v tabulce. Můžete použít i odkaz na buňku. Jestliže zadáte číslo, převyšující počet sloupců v tabulce, funkce vrátí chybu „#REF!“.

 

Typ určuje způsob hledání. Jestliže tento parametr vynecháte, nebo zadáte hodnotu PRAVDA, hledání se provede podle přibližné hodnoty v prvém sloupci. To znamená, že pokud se v prvém sloupci nenalezne hodnota zadaná v parametru Hledat, hledání se provede podle nejvyšší hodnoty, která je nižší než zadaná hodnota pro hledání. Toto platí pro číselné hodnoty (podle velikosti), datumové hodnoty (chronologicky) nebo texty (podle abecedy). Jestliže se v prvém sloupci vyskytuje více stejných hodnot, které vyhovují hledání, bere se poslední. Hodnota NEPRAVDA znamená hledání podle přesná shody. Je-li v tabulce více stejných hodnot, bere se první. Jestliže se u přesného hledání hodnota nenalezne, výsledkem je chyba „#N/A“.

Seřazení tabulky po řádcích provedete jednoduše tak, že postavíte kurzor do prvého sloupce tabulky, na kartě Domů použijete tlačítko Seřadit a filtrovat a vyberete příkaz Seřadit od A do Z nebo Od nejmenšího k největšímu (text příkazu se mění podle typu hodnot v prvém sloupci).

V parametru Typ můžete použít i odkaz na buňku. Prázdná buňka se však bere jako NEPRAVDA, nikoliv jako výchozí hodnota parametru (PRAVDA).

Funkce VVYHLEDAT

Funkce VVYHLEDAT funguje zcela stejně s tím rozdílem, že je datová tabulka orientována po sloupcích a hledání se provádí podle hodnoty v prvém řádku tabulky. Při použití funkce VVYHLEDAT musí být datová tabulka seřazena vzestupně zleva doprava.

Vodorovné seřazení tabulky je poněkud komplikovanější a provedete jej tímto postupem:

  1. Označíte oblast s tabulkou.
  2. Na kartě Domů použijete tlačítko Seřadit a filtrovat a vyberete příkaz Vlastní řazení.
  3. Ve vyvolaném dialogu stisknete tlačítko Možnosti.
  4. Označíte volbu Seřadit zleva doprava a potvrdíte tlačítkem OK.
  5. V seznamu Seřadit podle vybrat číslo prvého řádku v tabulce a potvrdíte.

 

Funkce INDEX

Tato funkce umožňuje vyhledávat hodnotu v zadané oblasti podle čísla řádku a sloupce. Funkce má dvě varianty. První umožňuje zpracovat pouze souvislou oblast, druhá varianta umožňuje použití nesouvislé oblasti. Proto při vložení funkce do vzorce se nejprve zobrazí dotaz na variantu, kterou chcete použít.

První variantu vložíte pomocí položky pole; řádek; sloupec. Varianta má tyto parametry:

  • Pole je odkaz na oblast buněk, kde se hledání provede. V oblasti se neuvažuje řádek s nadpisy.
  • Řádek je pořadové číslo řádku v oblasti. Jedná se tedy o číslo vzhledem k zadané oblasti, nikoliv o číslo řádku na listu.
  • Sloupec je pořadové číslo sloupce v oblasti.

Jestliže zadáte číslo řádku a sloupce, funkce vrátí obsah buňky na určené pozici v zadané oblasti. Prázdná buňka se vrátí jako nula, datumová hodnota jako nenaformátovaná. Jestliže do parametru Řádek nebo Sloupec zadáte nulu nebo číslo větší, než je počet řádků nebo sloupců, vrátí se chyba „#REF!“. Při zadání čísla menšího než nula se vrací chyba „#HODNOTA!“.

Jestliže jako číslo sloupce zadáte nulu, funkce vrátí celý řádek, při číslu řádku nula vrátí celý sloupec. V tomto případě vrací tedy funkce více hodnot a pro vložení funkce do buňky proto musíte použít klávesovou kombinaci Ctrl + Shift + Enter. Oblast pro vrácení řádku nebo sloupce může být i menší, pak se vrátí hodnoty od počátku oblasti (shora nebo odleva). Jestliže je naopak oblast příliš velká, nadbytečné buňky jsou vyplněny chybou „#N/A“.

Jestliže má funkce INDEX vracet celý řádek nebo sloupec, jako číslo sloupce nebo řádku musíte uvést nula. V rozporu proti nápovědě nesmíte tento parametr vynechat, jinak je výsledkem chyba „#REF!“.

Jestliže vzorec s funkcí INDEX vložíte napravo nebo nalevo od zpracovávané oblasti, můžete do parametru Řádek zapsat nulu nebo jej dokonce vynechat. Funkce v tomto případě vrátí hodnotu, odpovídající řádku, ve kterém je vzorec. Vzorec pod nebo nad tabulkou funguje obdobně s hodnotou sloupce nula. Číslo sloupce ale vynechat nesmíte.

Druhá varianta funkce INDEX funguje zcela stejně s tím rozdílem, že funkce umožňuje vyhledávat ve více nesouvislých oblastech. Parametry:

  • Odkaz je oblast nebo série více oblastí, kde se bude hledání provádět. U více oblastí musíte odkaz na oblasti zapsat do závorek. Vytvoříte tedy odkaz na nesouvislou oblast pomocí klávesy Ctrl a potom přímo parametru zapíšete dopředu a dozadu závorky.
  • Řádek má stejný význam, jako u prvé varianty.
  • Sloupec má stejný význam, jako u prvé varianty.
  • Oblast pořadové číslo oblasti. Jestliže je prohledávaná oblast souvislá, funkce funguje jako u prvé varianty a parametr Oblast můžete vynechat. Jestliže parametr Oblast vynecháte při zadání více prohledávaných oblastí, bere se jako jednička.

Zápis závorek musíte provést myší, v parametru funkce nelze požít klávesové šipky. V okně pro zadání funkce se u parametru Odkaz objevuje chybové hlášení HODNOTA, i když je odkaz na oblast uzávorkován. Pro správnou práci funkce to však nevadí.

Oblasti nemusí mít stejné rozměry. Ale pokud zadáte číslo řádku nebo sloupce, které by bylo u zadané oblasti již mimo, funkce vrátí chybu „#REF!“.

Vracení více hodnot stejně jako u prvé varianty.

I u druhé varianty funkce INDEX platí, že u vzorce vlevo nebo vpravo od oblasti hodnot nebo nad a pod hodnotami lze číslo řádku vynechat nebo použít nulu a místo čísla sloupce napsat nulu. Musíte ale zapsat správné číslo části oblasti. Jestliže jsou dvě oblasti zapsány na listu vedle sebe, je možné vybrat z více oblastí.

Funkce ZVOLIT

Funkce umožňuje volbu mezi několika zadanými hodnotami. Parametry funkce:

  • Index je pořadové číslo volby. Může to být konkrétní číslo nebo odkaz na buňku. Je-li hodnota indexu mimo rozsah voleb nebo parametr odkazuje na prázdnou buňku, výsledkem je chyba „#HODNOTA!“.
  • Hodnota1, Hodnota2 atd. jsou jednotlivé volby. Můžete použít odkazy na buňky, konstanty nebo vzorce. Maximální počet volen je 254.

V argumentech Hodnota1 atd. můžete vytvořit i odkazy na oblasti. Funkce potom vrací přímo hodnoty zvolené oblasti; pro vložení výsledku vyznačíte potřebnou oblast buněk a vložení funkce provedete klávesovou kombinací Ctrl + Shift + Enter. Jestliže nejsou vstupní oblasti stejně velké a oblast pro výsledek je větší, než některá vstupní oblast, ve zbylých buňkách je chyba „#N/A!“.

Funkci ZVOLIT, vracející hodnoty zvolené oblasti, můžete s výhodou využít jako argument funkce zpracovávající oblast buněk, např. SUMA, PRŮMĚR apod. Podle hodnoty argumentu Index může vnější funkce zpracovávat různé oblasti.