
souhrn
Funkce Excel INDIRECT vrací platný odkaz z daného textového řetězce. INDIRECT je užitečné, když chcete převést textovou hodnotu na platný odkaz na buňku.
Účel
Vytvořte odkaz z textuNávratová hodnota
Platný odkaz na list.Syntax
= NEPŘÍMÉ (ref_text, (a1))Argumenty
- ref_text - reference poskytovaná jako text.
- a1 - (volitelně) Logická hodnota, která označuje odkaz ve stylu A1 nebo R1C1. Výchozí hodnota je PRAVDA = styl A1.
Verze
Excel 2003Poznámky k použití
Funkce INDIRECT vrací platný odkaz z daného textového řetězce. INDIRECT je užitečné, když chcete převést textovou hodnotu na platný odkaz na buňku. Chcete-li například vytvořit odkaz na buňku A1 z textu, můžete použít INDIRECT takto:
=INDIRECT("A1") // returns reference to A1
Účel INDIRECT se může na první pohled zdát matoucí (tj. Proč používat text, když můžete uvést pouze správný odkaz?), Ale existuje mnoho situací, kdy je schopnost vytvořit odkaz z textu užitečná, včetně:
- Vzorec, který vyžaduje název variabilního listu
- Pevná reference, která se nezmění ani při odstranění řádků nebo sloupců
- Vytváření číselných polí pomocí funkce ROW v komplexních vzorcích
Poznámka: INDIRECT je nestálá funkce a může způsobit problémy s výkonem u velkých nebo složitých listů.
Název proměnného listu
Ve výše uvedeném příkladu je INDIRECT nastaven na použití názvu proměnného listu takto:
=INDIRECT(B6&"!A1") // sheet name in B6 is variable
Vzorec v B6, zkopírovaný dolů, vrací hodnotu v buňce A1 na prvních 5 listech pomocí názvů listů zadaných ve sloupci B. Jinými slovy, když je ve sloupci B zadán jiný název listu, je vrácen nový výsledek. Se stejným přístupem můžete uživateli umožnit vybrat název listu pomocí rozevíracího seznamu a poté vytvořit odkaz na vybraný list pomocí INDIRECT.
Poznámka: Názvy listů, které obsahují interpunkci nebo mezeru, musí být uzavřeny do jednoduchých uvozovek ('), jak je vysvětleno v tomto příkladu. Toto není specifické pro funkci NEPŘÍMÝ; totéž platí pro všechny vzorce.
Opravená reference
Odkaz vytvořený programem INDIRECT se nezmění, ani když jsou vloženy nebo odstraněny buňky, řádky nebo sloupce. Například níže uvedený vzorec bude vždy odkazovat na prvních 100 řádků sloupce A, i když jsou řádky v tomto rozsahu odstraněny nebo vloženy:
=INDIRECT("A1:A100") // will not change
Generovat číselné pole
Pokročilejší použití INDIRECTU je vytvoření číselného pole s funkcí ROW takto:
ROW(INDIRECT("1:10")) // create (1;2;3;4;5;6;7;8;9;10)
Jeden příklad použití je vysvětlen v tomto vzorci, který shrnuje dolní hodnoty n v rozsahu.
Můžete také narazit na tuto myšlenku ve složitějších vzorcích, které potřebují sestavit numerické pole „on-the-fly“. Jedním z příkladů je tento vzorec určený k odstranění číselných znaků z řetězce.
Poznámky
- Reference vytvořené programem INDIRECT jsou vyhodnocovány v reálném čase a je zobrazen jejich obsah.
- Když je ref_text externí odkaz na jiný sešit, sešit musí být otevřený.
- a1 je volitelné. Když je vynechán, a1 je TRUE = A1 odkaz na styl.
- Když je a1 nastaveno na FALSE, INDIRECT vytvoří odkaz ve stylu R1C1.
- INDIRECT je volatilní funkce a může způsobit problémy s výkonem.
Související videa


