Conectați-vă cu Microsoft
Conectați-vă sau creați un cont
Salut,
Selectați un alt cont.
Aveți mai multe conturi
Alegeți contul cu care doriți să vă conectați.

Returnează una dintre cele două părți, în funcție de evaluarea unui expresie.

Puteți utiliza IIF oriunde puteți utiliza expresii. Utilizați IIF pentru a determina dacă o altă expresie este TRUE sau false. Dacă expresia este adevărată, IIF returnează o valoare; Dacă este false, IIF returnează altul. Specificați valorile pe care le returnează IIF .

Vedeți câteva exemple

Sintaxă

IIF ( expr , valoare adevărat , valoare fals )

Sintaxa funcției IIF are următoarele argumente:

Argument

Descriere

expr

Obligatoriu. Expresie pe care doriți să o evaluați.

valoare adevărat

Obligatoriu. Valoarea sau expresia s-a returnat dacă expr este True.

valoare fals

Obligatoriu. Valoarea sau expresia s-a returnat dacă expr este false.


Observații

IIF evaluează întotdeauna atât valoare adevărat , cât și valoare fals, chiar dacă returnează numai una dintre ele. Din acest motiv, ar trebui să urmăriți reacțiile adverse nedorite. De exemplu, dacă evaluarea valoare fals are ca rezultat o eroare divizare la zero, apare o eroare chiar dacă expr este True.

Exemple

Utilizarea IIF într-un formular sau raport    Să presupunem că aveți un tabel clienți care conține un câmp denumit Țarăregiune. Într-un formular, doriți să desemnați dacă limba italiană este prima limbă a persoanei de contact. Puteți să adăugați un control și să utilizați IIF în proprietatea sursă de control , astfel:

= IIf ([Țarăregiune] = "Italia", "italiană", "o altă limbă")

Atunci când deschideți formularul în vizualizarea formular, controlul afișează "italian" de fiecare dată când valoarea pentru Țarăregiune este Italia și "o altă limbă" de fiecare dată când Țarăregiune este orice altă valoare.

Utilizarea IIF în expresii complexe    Puteți utiliza orice expresie ca orice parte a unei declarații IIF . De asemenea, puteți să "imbricați" expresii IIF , permițându-vă să evaluați o serie de expresii dependente. Pentru a continua cu exemplul anterior, se recomandă să testați pentru mai multe valori Țarăregiune diferite, apoi să afișați limba potrivită în funcție de valoarea care există:

= IIf ([Țarăregiune] = "Italia", "italiană", IIf ([Țarăregiune] = "Franța", "franceză", IIf ([Țarăregiune] = "Germania", "german", "o altă limbă")))

Textul "altă limbă" este argumentul valoare fals al funcției intime IIF . Deoarece fiecare funcție IIF imbricată este argumentul valoare fals al funcției IIF care o conține, textul "o altă limbă" se returnează numai dacă toate argumentele expr ale tuturor funcțiilor IIF se evaluează la false.

Pentru un alt exemplu, să presupunem că lucrați într-o bibliotecă. Baza de date a bibliotecii are un tabel denumit Check out care conține un câmp, denumit dată scadentă, care conține data la care se retrage o anumită carte. Puteți să creați un formular care indică starea unui element extras dintr-un control, utilizând funcția IIF în proprietatea Sursă control a controlului respectiv, astfel:

= IIf ([dată scadentă] <dată (), "restant", IIf ([dată scadentă] = date (), "scadent astăzi", "nu este încă scadentă"))

Atunci când deschideți formularul în vizualizarea formular, controlul afișează "DEPĂȘIT" Dacă valoarea datei scadente este mai mică decât data curentă, "scadentă astăzi" dacă este egală cu data curentă și "Nescadent încă", altfel.

Notă: Pentru a utiliza operatori logici, cum ar fi "and" sau "or" în argumentul expr al funcției IIF , trebuie să încadrați expresia logică în funcția eval . Vedeți tabelul exemplu care urmează.

Utilizarea IIf într-o interogare    

Funcția IIF este utilizată frecvent pentru a crea câmpuri calculate în interogări. Sintaxa este aceeași, cu excepția faptului că, într-o interogare, trebuie să prefațați expresia cu un alias de câmp și un punct (:) în locul unui semn egal (=). Pentru a utiliza exemplul anterior, tastați următoarele în rândul câmp din grila de proiectare a interogării:

Language: IIf ([Țarăregiune] = "Italia", "italiană", "o altă limbă")

În acest caz, "Language:" este aliasul câmpului.

Pentru mai multe informații despre crearea interogărilor și a câmpurilor calculate, consultați articolul crearea unei interogări de selectare simple.

Utilizarea IIf în codul VBA    

Notă: Exemplele care urmează demonstrează utilizarea acestei funcții într-un modul Visual Basic for Applications (VBA). Pentru mai multe informații despre lucrul cu VBA, selectați Referințe pentru dezvoltatori în lista verticală de lângă Căutare și introduceți unul sau mai mulți termeni în caseta de căutare.

Acest exemplu utilizează funcția IIF pentru a evalua parametrul TestMe al procedurii CheckIt și returnează cuvântul "mare" dacă valoarea este mai mare decât 1000; altfel, returnează cuvântul "mic".

Function CheckIt (TestMe As Integer)
CheckIt = IIf(TestMe > 1000, "Large", "Small")
End Function

Mai multe exemple

Expresie

Rezultatele

= IIf ([AirportCode] = "ORD", "Chicago", IIf ([AirportCode] = "ATL", "Atlanta", IIf ([AirportCode] = "mare", "Seattle", "altele")))

Dacă [AirportCode] este "ORD", returnați "Chicago". Altfel, dacă [AirportCode] este "ATL", Return "Atlanta". Altfel, dacă [AirportCode] este "mare", returnați "Seattle". În caz contrar, returnați "altele".

= IIf ([controlului DatăLivrare] <dată (), "livrat", IIf ([controlului DatăLivrare] = date (), "livrare astăzi", "neexpediat"))

Dacă [controlului DatăLivrare] este înainte de data de astăzi, Return "livrat". În caz contrar, dacă [controlului DatăLivrare] este egal cu data de astăzi, returnați "livrare astăzi". Altfel, returnați "neexpediat".

= IIf ([PurchaseDate] <#1/1/2008 #, "vechi", "nou")

Dacă [PurchaseDate] este înainte de 1/1/2008, returnați "vechi". Altfel, returnați "nou".

= IIf (eval ([volți] între 12 și 15 și [amperi] între 0,25 și 0,3), "OK", "în afara etalonării")

Dacă [Volts] este între 12 și 15 și [amperi] este între 0,25 și 0,3, reveniți la "OK". Altfel, returnați "din calibrare".

= IIf (eval ([Țarăregiune] in ("Canada", "SUA", "Mexic")), "America de Nord", "altele")

Dacă [Țarăregiune] este "Canada", "SUA" sau "Mexic", Return "America de Nord". În caz contrar, returnați "altele".

= IIf ([average] >= 90, "A", IIf ([medie] >= 80, "B", IIf ([average] >= 70, "C", IIf ([medie] >= 60, "D", "F")))))

Dacă [average] este 90 sau o versiune mai mare, returnați "A". În caz contrar, dacă [average] este 80 sau mai mare, returnați "B". În caz contrar, dacă [average] este 70 sau mai mare, returnați "C". În caz contrar, dacă [average] este 60 sau mai mare, returnați "D". În caz contrar, returnați "F".

Notă: Dacă utilizați funcția IIF pentru a crea un câmp calculat într-o interogare, înlocuiți semnul egal (=) cu un alias de câmp și un colon (:). De exemplu, stare: IIF ([controlului DatăLivrare] <dată (), "livrat", IIF ([controlului DatăLivrare] = date (), "livrare astăzi", "neexpediat"))

Aveți nevoie de ajutor suplimentar?

Doriți mai multe opțiuni?

Explorați avantajele abonamentului, navigați prin cursurile de instruire, aflați cum să vă securizați dispozitivul și multe altele.

Comunitățile vă ajută să adresați întrebări și să răspundeți la întrebări, să oferiți feedback și să primiți feedback de la experți cu cunoștințe bogate.

Au fost utile aceste informații?

Cât de mulțumit sunteți de calitatea limbajului?
Ce v-a afectat experiența?

Vă mulțumim pentru feedback!

×