Vyhledávací funkce
Z MiS
(Rozdíly mezi verzemi)
(Přidána funkce ZVOLIT) |
(Přidán příklad funkce POZVYHLEDAT.) |
||
(Není zobrazena 1 mezilehlá verze od 1 uživatele.) | |||
Řádka 47: | Řádka 47: | ||
== Funkce <tt>POZVYHLEDAT()</tt> == | == Funkce <tt>POZVYHLEDAT()</tt> == | ||
+ | |||
+ | Vyhledá zadaný prvek v oblasti buněk a vrátí číslo buňky, ve které se prvek nachází. | ||
+ | |||
+ | <div class="Priklad"> | ||
+ | Například hledáme v řádku se jmény jméno <tt>Karel</tt>. <tt>POZVYHLEDAT()</tt> nám umí vrátit index prvního výskytu jména na zadaném řádku. | ||
+ | |||
+ | Proto v tabulce: | ||
+ | {| class="wikitable" | ||
+ | |- | ||
+ | | !!A !!B !!C !!D | ||
+ | |- | ||
+ | |1||Eduard ||Iveta ||Karel ||Adéla | ||
+ | |- | ||
+ | |} | ||
+ | |||
+ | Bude vracet: | ||
+ | =POZVYHLEDAT("Karel"; A1:D1) | ||
+ | hodnotu: | ||
+ | 3 | ||
+ | (Jméno Karel je ve třetí buňce zadané oblasti.) | ||
+ | </div> | ||
+ | |||
+ | Funkci <tt>POZVYHLEDAT</tt> můžeme využít pro hledání čísla sloupce pro funkci <tt>SVYHLEDAT</tt>: | ||
+ | |||
+ | Pro datovou tabulku: | ||
+ | {| class="wikitable" | ||
+ | |- | ||
+ | ! !!A !!B !!C !!D | ||
+ | |- | ||
+ | |1||ID ||Jmeno ||Prijmeni ||Pozice ||Oddeleni | ||
+ | |- | ||
+ | |2||105 ||Anna ||Hrasková ||project owner ||IT | ||
+ | |- | ||
+ | |3||84 ||Ivan ||Dvořák ||konzultant ||Prodej | ||
+ | |- | ||
+ | |} | ||
+ | |||
+ | Můžeme vyhledávat informace o zaměstnancích: | ||
+ | {| class="wikitable" | ||
+ | |- | ||
+ | ! !!H !!I | ||
+ | |- | ||
+ | |1||Zadej ID: ||105 | ||
+ | |- | ||
+ | |2||Prijmeni ||<tt>=SVYHLEDAT($I$1; $A$1:$D$3; '''POZVYHLEDAT($H2; $A1$D1; 0)'''; 0)</tt> → Hrasková | ||
+ | |- | ||
+ | |3||Oddeleni ||IT | ||
+ | |- | ||
+ | |} | ||
+ | |||
+ | Funkce <tt>SVYHLEDAT</tt> zde bude vyhledávat údaje o zaměstnanci s daným ID, přičemž číslo sloupce odpovídajícího údaje ze sloupce <tt>H</tt> jí dodá funkce <tt>POZVYHLEDAT</tt>. | ||
Aktuální verze z 10. 1. 2022, 20:46
Obsah |
Úvod
- Vyhledávací funkce slouží k doplnění (vyhledání) údajů z jiných listů či tabulek.
- Nahrazují tak spojení (JOIN) z jazyka SQL.
Tabulka pro příklady
... | D | E | F | G | ||
---|---|---|---|---|---|---|
1 | ... | Výkon | Jméno | Datum narození | Výška | Odměna |
2 | ... | 110 | Karel | 15. 2. 1993 | 185 | 3000 |
3 | ... | 128 | Ivana | 2. 5. 1994 | 176 | 4000 |
4 | ... | 151 | Aleš | 28. 11. 1995 | 178 | 3500 |
Funkce SVYHLEDAT
- Vyhledává v tabulce, která je organizována jako databáze (každý řádek pojednává o jednom záznamu v databázi.
- Vyhledávací klíč (id) je vždy v prvním sloupci tabulky.
- Můžete pomocí vyhledávacího klíče vyhledat hodnotu ze kteréhokoli sloupce.
=SVYHLEDAT(klíč; vyhledávací-oblast; číslo-hledaného-sloupce; mezilehlé?)
- Význam parametrů
- klíč... hodnota vyhledávacího klíče, která se bude hledat v prvním sloupci vyhledávací oblasti (tabulky).
- vyhledávací-oblast... rozsah buněk, který se použije jako vyhledávací oblast (vyhledávací tabulka).
- číslo-hledaného-sloupce... číslo sloupce, ve kterém je hledaná hodnota.
- Číslo se počítá od začátku vyhledávací oblasti, nikoli od začátku listu.
- mezilehlé?... nastavíme na PRAVDA nebo 1, pokud chceme vyhledávat nejbližší hodnotu klíče.
- Hodnota pravda vyžaduje, aby byla tabulka seřazená podle hodnot klíče (vzestupně).
- Pokud chceme vyhledávat přesnou hodnotu klíče, musíme uvést NEPRAVDA, resp. 0.
=SVYHLEDAT(128; $A$1:$G$4; 3; NEPRAVDA)
- Vrací výšku uživatele s výkonem 128, což je Ivana. Výsledek bude tedy 176.
=SVYHLEDAT(120; $A$1:$G$4; 4; PRAVDA)
- Vrací odměnu uživatele s nejvyšším výkonem menším nebo rovným 120, což je Karel. Výsledek bude tedy 3000.
Funkce POZVYHLEDAT()
Vyhledá zadaný prvek v oblasti buněk a vrátí číslo buňky, ve které se prvek nachází.
Například hledáme v řádku se jmény jméno Karel. POZVYHLEDAT() nám umí vrátit index prvního výskytu jména na zadaném řádku.
Proto v tabulce:
!!A !!B !!C !!D | ||||
1 | Eduard | Iveta | Karel | Adéla |
Bude vracet:
=POZVYHLEDAT("Karel"; A1:D1)
hodnotu:
3
(Jméno Karel je ve třetí buňce zadané oblasti.)
Funkci POZVYHLEDAT můžeme využít pro hledání čísla sloupce pro funkci SVYHLEDAT:
Pro datovou tabulku:
A | B | C | D | ||
---|---|---|---|---|---|
1 | ID | Jmeno | Prijmeni | Pozice | Oddeleni |
2 | 105 | Anna | Hrasková | project owner | IT |
3 | 84 | Ivan | Dvořák | konzultant | Prodej |
Můžeme vyhledávat informace o zaměstnancích:
H | I | |
---|---|---|
1 | Zadej ID: | 105 |
2 | Prijmeni | =SVYHLEDAT($I$1; $A$1:$D$3; POZVYHLEDAT($H2; $A1$D1; 0); 0) → Hrasková |
3 | Oddeleni | IT |
Funkce SVYHLEDAT zde bude vyhledávat údaje o zaměstnanci s daným ID, přičemž číslo sloupce odpovídajícího údaje ze sloupce H jí dodá funkce POZVYHLEDAT.
Funkce VVYHLEDAT()
- Je analogická funkci SVYHLEDAT(), ale místo s řádky pracuje se sloupci.
- Z praktického hlediska (třeba kvůli možnosti využití kontingenčních tabulek) většinou ukládáme záznamy raději v řádcích, proto tato funkce není tak často používána.
Funkce ZVOLIT()
- Přiřazuje číslům textové ekvivalenty.
- Syntaxe
=ZVOLIT(index; varianta1; varianta2; ...)
- Význam parametrů
- index... která hodnota se má vybrat? Číslo, pomocí kterého vybíráme výsledek z uvedených variant.
- varianta1, varianta2,...... varianty výsledku, ze kterých vybíráme.
=ZVOLIT(A1;"výborný";"chvalitebný";"dobrý";"dostatečný";"nedostatečný")
- Vrací textový přepis známky podle číselného zápisu v buňce A1.