Funkce INDEX vrací hodnotu nebo odkaz na hodnotu v tabulce nebo oblasti.
Funkce INDEX se dá použít dvěma způsoby:
-
Pokud chcete vrátit hodnotu zadané buňky nebo matice buněk, podívejte se na maticovou formu.
-
Pokud chcete vrátit odkaz na zadané buňky, podívejte se na formu odkazu.
Maticová forma
Popis
Vrátí hodnotu prvku v tabulce nebo matici vybraného indexy čísel řádků a sloupců.
Funkce INDEX v maticové formě se používá, jestliže je první argument této funkce maticovou konstantou.
Syntaxe
INDEX (pole, řádek; [sloupec])
Maticová forma funkce INDEX má následující argumenty:
-
matice Povinný argument. Jedná se o oblast buněk nebo maticovou konstantu.
-
Pokud matice obsahuje pouze jeden řádek nebo sloupec, odpovídající argument row_num nebo column_num je volitelný.
-
Pokud matice obsahuje více než jeden řádek a více než jeden sloupec a používá se pouze row_num nebo column_num, vrátí funkce INDEX matici celého řádku nebo sloupce v matici.
-
-
Řádek Povinné, pokud není k dispozici column_num. Určuje řádek v matici, ze kterého chcete vrátit hodnotu. Pokud row_num vynecháte, je column_num povinný.
-
Sloupec Nepovinný argument. Určuje sloupec v matici, ze kterého chcete vrátit hodnotu. Pokud column_num vynecháte, je row_num povinný.
Poznámky
-
Pokud se použijí argumenty row_num i column_num, vrátí funkce INDEX hodnotu v buňce v průsečíku row_num a column_num.
-
row_num a column_num musí odkazovat na buňku v rámci matice; v opačném případě vrátí funkce INDEX #REF! .
-
Pokud nastavíte row_num nebo column_num na 0 (nula), vrátí funkce INDEX pole hodnot pro celý sloupec nebo řádek. Pokud chcete použít hodnoty vrácené jako matici, zadejte funkci INDEX jako maticový vzorec.
Poznámka: Pokud máte aktuální verzi Microsoftu 365, můžete vzorec zadat do levé horní buňky výstupní oblasti a stisknutím klávesy ENTER vzorec potvrdit jako dynamický maticový vzorec. Jinak musí být vzorec zadán jako starší maticový vzorec tak, že nejprve vyberete výstupní oblast, zadáte vzorec do levé horní buňky výstupní oblasti a pak ho stisknutím kombinace kláves CTRL+SHIFT+ENTER potvrdíte . Excel vloží složené závorky na začátku a konci vzorce za vás. Další informace o maticových vzorcích najdete v tématu s pokyny k používání a příklady maticových vzorců.
Příklady
Příklad 1
V následujícím příkladu je funkce INDEX použitá k nalezení hodnoty buňky, ve které se protíná řádek a sloupec.
Zkopírujte vzorová data v následující tabulce a vložte je do buňky A1 nového excelového sešitu. Aby vzorce zobrazily výsledky, vyberte je, stiskněte F2 a potom stiskněte Enter.
Data |
Data |
|
---|---|---|
Jablka |
Citrony |
|
Banány |
Hrušky |
|
Vzorec |
Popis |
Výsledek |
=INDEX(A2:B3;2;2) |
Hodnota v průsečíku druhého řádku a druhého sloupce oblasti A2:B3 |
Hrušky |
=INDEX(A2:B3,2,1) |
Hodnota v průsečíku druhého řádku a prvního sloupce oblasti A2:B3 |
Banány |
Příklad 2
V následujícím příkladu je funkce INDEX použitá k nalezení hodnot dvou buněk v zadané matici 2×2.
Poznámka: Pokud máte aktuální verzi Microsoftu 365, můžete vzorec zadat do levé horní buňky výstupní oblasti a stisknutím klávesy ENTER vzorec potvrdit jako dynamický maticový vzorec. Jinak musí být vzorec zadán jako starší maticový vzorec tak, že nejprve vyberete dvě prázdné buňky, zadáte vzorec do levé horní buňky výstupní oblasti a pak ho stisknutím kombinace kláves CTRL+SHIFT+ENTER potvrďte. Excel vloží složené závorky na začátku a konci vzorce za vás. Další informace o maticových vzorcích najdete v tématu s pokyny k používání a příklady maticových vzorců.
Vzorec |
Popis |
Výsledek |
---|---|---|
=INDEX({1,2;3,4},0,2) |
Hodnota nacházející se v prvním řádku a druhém sloupci matice. Matice obsahuje v prvním řádku hodnoty 1 a 2 a v druhém řádku hodnoty 3 a 4. |
2 |
Hodnota nacházející se v druhém řádku a druhém sloupci matice (stejné matice jako výše). |
4 |
|
Referenční formulář
Popis
Vrátí adresu buňky ležící v průsečíku zadaného řádku a sloupce. Pokud se odkaz skládá z nesousedících výběrů, můžete vybrat výběr, ve který chcete hledat.
Syntaxe
INDEX(odkaz, řádek, [sloupec], [oblast])
Referenční forma funkce INDEX má následující argumenty:
-
Odkaz Povinný argument. Jedná se o odkaz na jednu nebo víc oblastí buněk.
-
Pokud pro odkaz zadáváte nesouvislý rozsah, uzavřete odkaz do závorek.
-
Pokud každá oblast v odkazu obsahuje pouze jeden řádek nebo sloupec, je argument row_num nebo column_num volitelný. Pokud třeba odkazujete na jeden řádek, zadejte hodnotu INDEX(odkaz;;sloupec).
-
-
Řádek Povinný argument. Určuje řádek, který se má protínat.
-
Sloupec Nepovinný argument. Určuje sloupec, který se má protínat.
-
area_num Nepovinný argument. Vybere oblast v odkazu, ze které chcete vrátit průnik row_num a column_num. První vybraná nebo zadaná oblast má číslo 1, druhá 2 atd. Pokud area_num vynecháte, použije funkce INDEX oblast 1. Všechny zde uvedené oblasti musí být umístěny na jednom listu. Pokud zadáte oblasti, které nejsou na stejném listu, způsobí to #VALUE! . Pokud potřebujete použít oblasti, které jsou umístěny na různých listech, doporučujeme použít maticový tvar funkce INDEX a použít jinou funkci k výpočtu oblasti, která tvoří matici. Pomocí funkce ZVOLIT můžete například vypočítat, která oblast se použije.
Pokud například odkaz popisuje buňky (A1:B4;D1:E4;G1:H4), area_num 1 je oblast A1:B4, area_num 2 je oblast D1:E4 a area_num 3 je oblast G1:H4.
Poznámky
-
Jakmile area_num a area_num vybrali určitou oblast, row_num a column_num vybrat konkrétní buňku: row_num 1 je první řádek v oblasti, column_num 1 je první sloupec atd. Odkaz vrácený funkcí INDEX je průnikem row_num a column_num.
-
Pokud nastavíte row_num nebo column_num na hodnotu 0 (nula), vrátí funkce INDEX odkaz pro celý sloupec nebo řádek.
-
row_num, column_num a area_num musí odkazovat na buňku v rámci odkazu; v opačném případě vrátí funkce INDEX #REF! . Pokud jsou vynechány row_num a column_num, vrátí funkce INDEX referenční oblast určenou area_num.
-
Výsledkem funkce INDEX je odkaz, který může být předložený jiným funkcím. V závislosti na vzorci vrátí funkce INDEX hodnotu, která může být použitá jako hodnota nebo jako odkaz. Třeba vzorec POLÍČKO("šířka";INDEX(A1:B2;1;2)) odpovídá vzorci POLÍČKO("šířka";B1). Funkce POLÍČKO použije návratovou hodnotu funkce INDEX jako odkaz na buňku. Na druhé straně vzorec jako 2*INDEX(A1:B2;1;2) způsobí, že vrácená hodnota funkce INDEX je číslo v buňce B1.
Příklady
Zkopírujte vzorová data v následující tabulce a vložte je do buňky A1 nového excelového sešitu. Aby vzorce zobrazily výsledky, vyberte je, stiskněte F2 a potom stiskněte Enter.
Ovoce |
Cena |
Množství |
---|---|---|
Jablka |
69 Kč |
40 |
Banány |
34 Kč |
38 |
Citrony |
55 Kč |
15 |
Pomeranče |
25 Kč |
25 |
Hrušky |
59 Kč |
40 |
Mandle |
280 Kč |
10 |
Oříšky kešu |
355 Kč |
16 |
Burské oříšky |
125 Kč |
20 |
Vlašské ořechy |
175 Kč |
12 |
Vzorec |
Popis |
Výsledek |
=INDEX(A2:C6;2;3) |
Průsečík druhého řádku a třetího sloupce v oblasti buněk A2:C6, což odpovídá obsahu buňky C3. |
38 |
=INDEX((A1:C6;A8:C11);2;2;2) |
Průsečík druhého řádku a druhého sloupce v druhé oblasti A8:C11, což odpovídá obsahu buňky B9. |
1,25 |
=SUMA(INDEX(A1:C11;0;3;1)) |
Součet třetího sloupce v první oblasti z oblasti buněk A1:C11, což odpovídá součtu C1:C11. |
216 |
=SUMA(B2:INDEX(A2:C6;5;2)) |
Součet oblasti buněk začínající na B2 a končící na průsečíku pátého řádku a druhého sloupce oblasti buněk A2:A6, což odpovídá součtu B2:B6. |
2.42 |