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é 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 pole obsahuje pouze jeden řádek nebo sloupec, je odpovídající argument row_num nebo column_num nepovinný.
-
Pokud má pole více než jeden řádek a více než jeden sloupec a použije 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 je row_num vynechán, vyžaduje se column_num.
-
Sloupec Nepovinný argument. Určuje sloupec v matici, ze kterého chcete vrátit hodnotu. Pokud je column_num vynechán, vyžaduje se row_num.
Poznámky
-
Pokud se použijí argumenty row_num i column_num, vrátí funkce INDEX hodnotu v buňce v průniku row_num a column_num.
-
row_num a column_num musí odkazovat na buňku v rámci pole; V opačném případě vrátí funkce INDEX #REF!. Pokud je pozice, kterou uvedete, před první položkou nebo za poslední položkou v poli, bude výsledkem vzorce chyba #REF!.
-
Pokud nastavíte row_num nebo column_num na 0 (nula), vrátí funkce INDEX matici 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 Microsoft 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. V opačném případě 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 stisknutím kombinace kláves CTRL+SHIFT+ENTER ho 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 Microsoft 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. V opačném případě 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 stisknutím kombinace kláves CTRL+SHIFT+ENTER ho 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ů.
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 |
|
Formulář odkazu
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, který se má vyhledat.
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 nesousedící oblast, uzavřete odkaz do závorek.
-
Pokud každá referenční oblast obsahuje pouze jeden řádek nebo sloupec, je argument row_num nebo column_num nepovinný. 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é se má vrátit průsečík row_num a column_num. První vybraná nebo zadaná oblast je číslo 1, druhá je 2 atd. Pokud area_num vynecháte, index použije oblast 1. Všechny zde uvedené oblasti musí být umístěné na jednom listu. Pokud zadáte oblasti, které nejsou na stejném listu jako ostatní, způsobí to #VALUE! Pokud je pozice, kterou uvedete, před první položkou nebo za poslední položkou v poli, bude výsledkem vzorce chyba #REF!. Pokud potřebujete použít oblasti, které jsou umístěné na různých listech, doporučujeme použít maticový tvar funkce INDEX a použít jinou funkci k výpočtu rozsahu, který tvoří matici. Můžete například použít funkci ZVOLIT k výpočtu rozsahu, který 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
-
Po výběru určité oblasti odkazem a area_num 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ůnik row_num a column_num.
-
Pokud nastavíte row_num nebo column_num na 0 (nula), vrátí funkce INDEX odkaz na 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 je pozice, kterou uvedete, před první položkou nebo za poslední položkou v poli, bude výsledkem vzorce chyba #REF!. Pokud row_num a column_num vynecháte, vrátí funkce INDEX oblast v odkazu určené 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 |