Použitie funkcie IIf na zobrazenie alebo vypočítanie hodnoty

Poznámka: Radi by sme vám čo najrýchlejšie poskytovali najaktuálnejší obsah Pomocníka vo vašom vlastnom jazyku. Táto stránka bola preložená automaticky a môže obsahovať gramatické chyby alebo nepresnosti. Naším cieľom je, aby bol tento obsah pre vás užitočný. Dali by ste nám v dolnej časti tejto stránky vedieť, či boli pre vás tieto informácie užitočné? Tu nájdete anglický článok pre jednoduchú referenciu.

Funkcia IIf á takúto syntax:

IIf (logický test, hodnota if true, hodnota if false)

Ak chcete napríklad vypočítať daň z predaja v textovom poli formulára, môžete zadať nasledujúci výraz do vlastnosti Zdroj ovládacieho prvku pre textové pole:

=IIf([Okres] = “BA”;[CelkováČiastkaObjednávky] * 0,095; 0)

Preklad: ak pole Okres obsahuje text BA, vypočítate daň z predaja ako CelkováČiastkaObjednávky krát 0,095. V opačnom prípade sa vráti len nula.

Vnorené funkcie IIf

Keď funkcii IIf porozumiete, zistíte, aké užitočné môže byť vnáranie. Vnáranie je používanie funkcie IIf v inej funkcii, buď ako argument „hodnota if true“ alebo ako „hodnota if false“ (prípadne obe). Predpokladajme, že chcete, aby stĺpec Stav v zostave zobrazoval hodnotu „Po termíne splnenia“, pokiaľ termín dokončenia pre položku uplynul. Ak je termínom dokončenia dnešný deň, mala by sa zobraziť hodnota „Platnosť do dnes“. Ak termín dokončenia ešte nenastal, stĺpec Stav by mal byť prázdny. Ak predpokladáme, že dnes je 9. február 2012, zobraziť by sa malo toto:

Zostava úloh so stĺpcom Stav používajúcim funkciu IIF na zobrazenie správy.

Toto je možné vykonať pomocou dvoch funkcií IIf, pričom jedna je vnorená ako argument „hodnota if false“ do druhej:

= IIf ([DueDate] < dátum (); "Po termíne splatnosti", IIf ([DueDate] = (dátum), "Dnes termín"))

Vonkajšia funkcia IIf porovnáva pole TermínDokončenia s dnešným dátumom (ktorý vracia funkcia Date()). V prípade prvých dvoch úloh vyššie uvedenej zostavy pripadá termín dokončenia na skorší deň ako dnešný, takže logický test vonkajšej funkcie IIF bude mať hodnotu True a zobrazí výsledok „PO TERMÍNE SPLNENIA“. V prípade tretej úlohy (maľovanie garáže) vyhodnotí vonkajšia funkcia IIF výsledok hodnotou False, takže vnorená funkcia IIf testuje, či je termínom dokončenia dnešný dátum. Keďže ním dnešný dátum je, vnorená funkcia IIf zobrazí text “Platnosť do dnes”. V prípade štvrtej úlohy (orezávania stromov) žiadna z funkcií IIf nevyhodnotí výsledok ako hodnotu True. Nezobrazí sa nič, pretože pre vnorenú funkciu IIf neexistuje žiaden argument „hodnota if false“. Ak sa má v tomto prípade niečo zobraziť, môžete samozrejme pridať argument.

Praktická rada

Vnorenie funkcií IIf je zábava, ale vo všeobecnosti nechcete prejsť viac ako jednej alebo dvoch úrovní vnorenia. Výrazy môžete rýchlo stať ťažké čítať a udržiavať. Ak váš vnorené funkcie IIF stále z ruky, zvážte použitie funkcia Switch, ktorá poskytuje podobné "Ak – potom" druh logická hodnota.

Na začiatok stránky

Rozšírte svoje zručnosti práce s balíkom Office
Preskúmať školenie
Buďte medzi prvými, ktorí získajú nové funkcie
Pridajte sa k insiderom pre Office

Boli tieto informácie užitočné?

Ďakujeme za vaše pripomienky!

Ďakujeme vám za pripomienky. Pravdepodobne vám pomôže, ak vás spojíme s pracovníkom podpory pre Office.

×