Ako používať príkazy If a vnorené If v Exceli

Jedna funkcia Excelu(Excel) , ktorú vo svojich vzorcoch používam dosť často, je funkcia IF . Funkcia IF sa používa na testovanie logickej podmienky a vytvára dva rôzne výsledky v závislosti od toho, či logická podmienka vráti hodnotu TRUE(TRUE) alebo FALSE .

Ako príklad použijeme nižšie uvedenú tabuľku predaja mobilných telefónov. Vzorový súbor si môžete stiahnuť tu .

Funkcia IF s jedinou podmienkou(IF Function with Single Condition)

Zvážte scenár, v ktorom musíte vypočítať provízny poplatok(Commission Fee) pre každý riadok predaja v závislosti od toho, kde sa predaj uskutočnil ( stĺpec D(Column D) ). Ak sa predaj uskutočnil v USA , provízny poplatok(Commission Fee) je 10 %, v opačnom prípade budú mať zvyšné miesta provízny poplatok(Commission Fee) vo výške 5 %.

Prvý vzorec, ktorý musíte zadať do bunky F2(Cell F2) , je uvedený nižšie:

=IF(D2="USA", E2*10%, E2*5%)

Rozdelenie vzorca:

  1. =IF(“=” označuje začiatok vzorca v bunke a IF je funkcia programu Excel, ktorú používame.
  2. D2=”USA”Logický(Logical) test, ktorý vykonáme (tj ak údaje v stĺpci D2USA ).
  3.  E2*10%Výsledok(Result) , ktorý vzorec vráti, ak má počiatočný logický test hodnotu TRUE(TRUE) (tj hodnota v stĺpci D2 je USA ).
  4. E2*5%Výsledok(Result) , ktorý bude vrátený vzorcom, ak počiatočný logický test bude mať hodnotu FALSE (tj hodnota v stĺpci D2 NIE JE(NOT) USA )(USA) .
  5. )Zátvorka(Closing) označujúca koniec vzorca.

Potom môžete skopírovať vzorec z bunky F2(Cell F2) do zvyšku riadkov v stĺpci F(Column F) a vypočíta provízny poplatok(Commission Fee) za každý riadok, buď o 10 % alebo 5 % v závislosti od toho, či logický test IF vráti (IF)hodnotu TRUE(TRUE) alebo FALSE na každom riadku. riadok.

Funkcia IF s viacerými podmienkami(IF Function with Multiple Conditions)

Čo keby boli pravidlá o niečo komplikovanejšie, keď potrebujete testovať viac ako jednu logickú podmienku, pričom pre každú podmienku sa vrátia rôzne výsledky?

Excel má na to odpoveď! Môžeme kombinovať viacero funkcií IF v rámci tej istej bunky, čo je niekedy známe ako vnorené IF(Nested IF) .

Zvážte podobný scenár, kde sa provízie(Commissions) líšia pre každé predajné miesto(Sales Location) , ako je uvedené nižšie:

  • USA 10 %
  • Austrália(Australia) 5 %
  • Singapur(Singapore) 2 %

Do bunky F2(Cell F2) (ktorá sa neskôr skopíruje do zvyšku riadkov v rovnakom stĺpci F) zadajte nasledujúci vzorec:

=IF(D2="USA",E2*10%,IF(D2="Australia",E2*5%,E2*2%))

Rozdelenie vzorca:

  1. =IF(začiatok(Beginning) vzorca pomocou príkazu IF
  2. D2=”USA”Prvý(First) logický test, ktorý vykonáme (tj ak údaje v stĺpci D2USA ).
  3.  E2*10%Výsledok(Result) , ktorý vzorec vráti, ak má počiatočný logický test hodnotu TRUE(TRUE) (tj hodnota v stĺpci D2 je USA ).
  4. IF(D2=”Australia”,E2*5%,E2*2%) – druhý príkaz Excel IF , ktorý bude hodnotený, ak počiatočný logický test dopadol na FALSE (tj hodnota v stĺpci D2 NIE JE (NOT) USA ). Ide o podobnú syntax „ Funkcie IF s jednou podmienkou“(IF Function with Single Condition”) , o ktorej sme hovorili vyššie v tomto článku, kde ak hodnota v bunke (Cell) D2 je Austrália(Australia) , vráti sa výsledok E2*5%V opačnom prípade, ak hodnota nie je Austrália(Australia) , funkcia vráti výsledok E2*2%.
  5. )Zátvorka(Closing) označujúca koniec vzorca pre prvú funkciu IF .

Keďže Excel vyhodnotí vzorec zľava doprava, keď je splnený logický test (napr. D2=“USA”, funkcia sa zastaví a vráti výsledok, pričom bude ignorovať akýkoľvek ďalší logický test po (napr . D2=“Australia” . )

Ak teda prvý logický test vráti hodnotu FALSE (tj umiestnenie nie je USA ), bude pokračovať v hodnotení druhého logického testu. Ak aj druhý logický test vráti hodnotu FALSE (tj miesto nie je Austrália(Australia) ), nemusíme ďalej testovať, pretože vieme, že jedinou možnou hodnotou v bunke D2(Cell D2) je Singapur(Singapore) , a preto by mala vrátiť výsledok E2*2% .

 Ak dávate prednosť prehľadnosti, môžete pridať tretí logický test IF(D2=”Singapore”, “value if TRUE” , “value if FALSE”) . Preto je úplný rozšírený vzorec uvedený nižšie:

=IF(D2="USA",E2*10%,IF(D2="Australia",E2*5%,IF(D2="Singapore",E2*2%)))

Ako už bolo spomenuté, vyššie uvedené vráti rovnaký výsledok ako pôvodný vzorec, ktorý sme mali.

=IF(D2="USA",E2*10%,IF(D2="Australia",E2*5%,E2*2%))

Rýchle tipy(Quick Tips)

  • Pre každú jednu funkciu IF( musí existovať otváracia a zatváracia okrúhla zátvorka. Keď existujú tri funkcie IF podľa jedného z vyššie uvedených príkladov, vzorec bude potrebovať tri uzatváracie zátvorky “)))“ , pričom každá označuje koniec zodpovedajúci otvárací príkaz IF( .
  • Ak nešpecifikujeme druhý výsledok logického testu (keď logický test dopadol na FALSE ), predvolená hodnota priradená Excelom(Excel) bude text „FALSE“. Takže vzorec =IF(D2=”USA”,E2*10%) vráti text “FALSE” , ak D2 nie je “USA” .
  • Ak máte niekoľko rôznych logických testov, z ktorých každý má svoj vlastný odlišný výsledok, môžete funkciu IF skombinovať/vnoriť viackrát, jeden po druhom, podobne ako v príklade vyššie.



About the author

Som počítačový inžinier s viac ako 10-ročnými skúsenosťami v softvérovom priemysle, konkrétne v Microsoft Office. Napísal som články a návody na rôzne témy týkajúce sa balíka Office vrátane tipov, ako efektívnejšie využívať jeho funkcie, trikov na zvládnutie bežných kancelárskych úloh a podobne. Moje schopnosti spisovateľa zo mňa tiež robia vynikajúci zdroj pre ostatných, ktorí sa chcú dozvedieť o Office alebo len potrebujú rýchlu radu.



Related posts