Kredit obrázku: Manuel Breva Colmeiro/Moment/GettyImages
Funkce If rozšiřuje základní výpočetní schopnosti Excelu tím, že poskytuje podmíněná hodnocení na základě logických testů typu pravda/nepravda. Jako příklad příkazu If Then v Excelu můžete Excelu dát pokyn, aby před jeho přidáním k součtu zkontroloval, zda je číslo kladné. Jediné srovnání je již pozoruhodně užitečné, ale Excel podporuje až 64 vnořených příkazů If pro řešení velmi složitých situací.
Základní formát
Funkce If se řídí základním formátem „if (test, pravda, nepravda)“ pro vytváření základních srovnání. Logický test může používat prakticky jakoukoli jinou funkci nebo odkaz ve spojení s operátorem a srovnávací hodnotou. Například "A1>0" jednoduše zkontroluje, zda je hodnota v A1 kladná, a "SUM(A1:E1)=F2" vyhodnotí, zda se součet pěti odkazovaných buněk rovná hodnotě v F2. Chcete-li porovnat textové hodnoty, umístěte srovnávací text do uvozovek. Hodnoty true a false v rovnici jsou akce nebo výstup, který závisí na logickém testu. Tento další příklad otestuje, zda se A1 rovná "Doe, John" a poté přidá hodnoty v B1 do C1, pokud je toto srovnání pravdivé, nebo nevypíše nic (reprezentováno prázdnými uvozovkami), pokud je nepravdivé:
Video dne
=IF(A1="Laň, Jan",B1+C1,"")
Funkce vnoření If
Vnoření znamená vložit další příkazy If na místo pravdivé nebo nepravdivé akce jiné funkce If. Chcete-li například otestovat, zda je hodnota v A1 větší než 0, ale menší než 10, můžete použít následující vzorec:
=KDYŽ(A1>0,KDYŽ(A1<10,"mezi nulou a 10",""),"")
Jak vidíte, i tento jednoduchý problém může být matoucí, takže pomůže přečíst si ho nahlas, například: „Pokud je A1 větší než nula, zkontrolujte, zda je A1 menší než 10. Pokud je, pak výstup 'mezi nulou a 10'; jinak nevypíše nic, a pokud je původní srovnání nepravdivé, nevypíše nic."
Zjednodušení vnořených příkazů If
Jedním ze způsobů, jak zjednodušit vnořené příkazy If, je minimalizovat jejich použití pomocí funkcí And a Or aplikace Excel ke kombinaci srovnání. Tyto funkce jsou strukturovány jako "AND(test1,test2,...)" nebo "OR(test1,test2,...)" pro maximálně 255 porovnání. V předchozím příkladu byste mohli odstranit vnořený příkaz If pomocí následujícího vzorce a zkontrolovat, zda je A1 větší než 0 a menší než 10 v jediném kroku:
=IF(AND(A1>0,A1<10),"mezi nulou a 10","")
Tento příkaz jednodušeji zní: „Pokud je A1 větší než nula a A1 je menší než 10, pak výstup ‚mezi nulou a 10‘; jinak nevytiskne nic."
Sestavování složitých vzorců
Psaní složitého, vnořeného vzorce od začátku do konce v jediném kroku je často nepraktické, takže je lepší použít přístup zevnitř do vnějšku nebo zvenku dovnitř. V obou případech byste napsali jediné srovnání, otestovali výsledky, přidali další srovnání, otestovali znovu a tak dále. V předchozím vnořeném příkladu můžete pro otestování výstupu začít s následujícím vzorcem:
=if (A1<10,"mezi nulou a 10","")
Pak byste kolem něj přidali první srovnání, například: =if (A1>0,if (A1<10,"mezi nulou a 10",""),"")
Podobně byste mohli pracovat vně a uvnitř a pomocí značek umístění otestovat první srovnání před přidáním vnořeného příkazu If na místo značky, například: =if (A1>0,"true","")
Potom byste nahradili "pravda" a jeho uvozovky dalším srovnáním. Tato metoda také funguje dobře, když přidáváte vnořené příkazy pro pravdivé i nepravdivé akce.