IIf, funkcja

Ważne: Ten artykuł został przetłumaczony maszynowo, zobacz zastrzeżenie. Angielskojęzyczną wersję tego artykułu można znaleźć tutaj .

Zwraca jedną z dwóch części, w zależności od otrzymanego wyniku wyrażenie.

Funkcji IIf można używać w dowolnym miejscu, gdzie są stosowane wyrażenia. Funkcja IIf jest używana w celu określenia czy warunek innego wyrażenia jest spełniony, czy nie. Jeśli warunek wyrażenia jest spełniony, funkcja IIf zwraca jedną wartość, a jeśli nie jest spełniony, funkcja IIf zwraca inną wartość. Użytkownik określa wartości zwracane przez funkcję IIf.

Przykłady

Składnia

IIf ( wyrażenie , jeśli prawda , jeśli_fałsz )

Składnia funkcji IIf zawiera następujące argumenty:

Argument

Opis

wyrażenie

Wymagany. Wyrażenie, które ma zostać obliczone.

jeśli_prawda

Wymagany. Wartość lub wyrażenie zwracane, jeśli argument wyrażenie ma wartość Prawda.

jeśli_fałsz

Wymagany. Wartość lub wyrażenie zwracane, jeśli argument wyrażenie ma wartość Fałsz.


Uwagi

Funkcja IIf zawsze oblicza argumenty jeśli_prawda i jeśli_fałsz, mimo że zwracany jest tylko jeden z nich. Dlatego należy uważać na możliwość wystąpienia niepożądanych efektów ubocznych. Jeśli na przykład obliczenie argumentu jeśli_fałsz spowoduje błąd dzielenia przez zero, ten błąd wystąpi, nawet jeśli argument wyrażenie daje wartość Prawda.

Przykłady

Używanie funkcji IIf w formularzu lub raporcie    Załóżmy, że masz tabelę Klienci, która zawiera pole o nazwie kraju/regionu. W formularzu chcesz określenia, czy włoski pierwszy język kontaktu. Można dodawać kontrolki i używanie funkcji IIf w jego właściwość Źródło formantu , tak jak:

=IIf([KrajRegion]="Włochy";"Włoski";"Inny język")

Po otwarciu formularza w widoku formularza kontrolka wyświetla wartość „Włoski” w przypadkach, gdy pole KrajRegion ma wartość Włochy, i wartość „Inny język” w przypadkach, gdy pole KrajRegion ma inną wartość.

Używanie funkcji IIf w wyrażeniach złożonych    Dowolne wyrażenie służy jako część instrukcji IIf . Można również "zagnieździć" wyrażenie IIf móc oceniać serii zależne wyrażeń. Aby kontynuować pracę w poprzednim przykładzie, można sprawdzić kilka różnych wartości kraju/regionu, a następnie Wyświetl odpowiedni język, w zależności od tego, który znajduje się wartość:

=IIf([KrajRegion]="Włochy";"Włoski";IIf([KrajRegion]="Francja";"Francuski";IIf([KrajRegion]="Niemcy";"Niemiecki";"Inny język")))

Tekst „Inny język” to argument jeśli_fałsz najgłębiej zagnieżdżonej funkcji IIf. Każda zagnieżdżona funkcja IIf jest argumentem jeśli_fałsz funkcji IIf, która ją zawiera, dlatego tekst „Inny język” jest zwracany tylko wtedy, gdy wszystkie argumenty wyrażenie wszystkich funkcji IIf zwracają fałsz.

Załóżmy na przykład, że pracujesz w bibliotece. W bazie danych biblioteki znajduje się tabela o nazwie Wypożyczenia zawierająca pole o nazwie Data oddania z terminem, do którego określona książka ma zostać oddana. Możesz utworzyć formularz wyświetlający stan wypożyczonych pozycji w kontrolce za pomocą funkcji IIf we właściwości Źródło kontrolki, w następujący sposób:

=IIf([Data oddania]<Date();"PRZETERMINOWANA";IIf([Data oddania]=Date();"Do oddania dzisiaj";"Przed terminem"))

Po otwarciu formularza w widoku formularza kontrolka wyświetli wartość „PRZETERMINOWANA”, jeśli wartość pola Data oddania jest wcześniejsza niż bieżąca data, „Do oddania dzisiaj”, jeśli jest równa bieżącej dacie, lub „Przed terminem” w pozostałych przypadkach.

Uwaga: Używać operatorów logicznych, takich jak "I" lub "Lub" w argumencie wyrażenie funkcji IIf , należy ująć wyrażenie logiczne w funkcja Eval . Zobacz przykładowej tabeli poniżej.

Używanie funkcji IIf w kwerendzie   

Funkcję IIf jest często używany do tworzenia pól obliczeniowych w kwerendach. Składnia jest taka sama, z wyjątkiem, że w kwerendzie, należy poprzedzić wyrażenia alias pola i dwukropek (:) zamiast znak równości (=). Aby użyć w poprzednim przykładzie, należy wpisać w wierszu pole w siatce projektu kwerendy następujące czynności:

Język: IIf([KrajRegion]="Włochy";"Włoski";"Inny język")

W tym przypadku alias pola to „Język:”.

Aby uzyskać więcej informacji na temat tworzenia kwerend i pól obliczeniowych zobacz artykuł Tworzenie prostej kwerendy wybierającej.

Używanie funkcji IIf w kodzie VBA   

Uwaga: Poniższe przykłady przedstawiają sposób użycia tej funkcji w module języka Visual Basic for Applications (VBA). Aby uzyskać dodatkowe informacje na temat pracy w języku VBA, wybierz pozycję Dokumentacja dewelopera z listy rozwijanej obok przycisku Wyszukaj i wprowadź odpowiednie terminy w polu wyszukiwania.

W poniższym przykładzie funkcja IIf służy do testowania parametru TestMe procedury CheckIt. Jeśli ilość jest większa niż 1000, zwracane jest słowo „Large”, a w przeciwnym razie — słowo „Small”.

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

Więcej przykładów

Wyrażenie

Wyniki

=IIf([KodLotniska]="BZG";"Bydgoszcz";IIf([KodLotniska]="GDN";"Gdańsk";IIf([KodLotniska]="SZZ";"Szczecin";"Inne")))

Jeśli pole [KodLotniska] ma wartość „BZG”, zwraca ciąg „Bydgoszcz”. W przeciwnym razie, jeśli pole [KodLotniska] ma wartość „GDN”, zwraca ciąg „Gdańsk”. W przeciwnym razie, jeśli pole [KodLotniska] ma wartość „SZZ”, zwraca ciąg „Szczecin”. W przeciwnym razie zwraca wartość „Inne”.

=IIf([DataWysyłki]<Date();"Wysłane";IIf([DataWysyłki]=Date();"Wysyłka dzisiaj";"Niewysłane"))

Jeśli pole [DataWysyłki] ma wartość przypadającą przed datą dzisiejszą, zwraca ciąg „Wysłane”. W przeciwnym razie, jeśli pole [DataWysyłki] ma wartość równą dacie dzisiejszej, zwraca ciąg „Wysyłka dzisiaj”. W przeciwnym razie zwraca wartość „Niewysłane”.

=IIf([DataZakupu]<#2008-01-01#;"Stare";"Nowe")

Jeśli [DataZakupu] przypada przed 2008-01-01, zwraca ciąg „Stare”. W przeciwnym razie zwraca ciąg „Nowe”.

=IIf(Eval([Wolty] Between 12 And 15 And [Ampery] Between 0,25 And 0,3);"OK";"Rozkalibrowane")

Jeśli pole [Wolty] ma wartość między 12 a 15 i pole [Ampery] ma wartość między 0,25 a 0,3, zwraca ciąg „OK”. W przeciwnym razie zwraca ciąg „Rozkalibrowane”.

=IIf(Eval([KrajRegion] In ("Kanada";"USA";"Meksyk"));"Ameryka Północna";"Inny")

Jeśli pole [KrajRegion] ma wartość „Kanada”, „USA” lub „Meksyk”, zwraca ciąg „Ameryka Północna”. W przeciwnym razie zwraca ciąg „Inny”.

=IIf([Średnia]>=90;"A";IIf([Średnia]>=80;"B";IIf([Średnia]>=70;"C";IIf([Średnia]>=60;"D";"F"))))

Jeśli [Średnia] wynosi 90 lub więcej, zwraca ocenę „A”. W przeciwnym razie, jeśli [Średnia] wynosi 80 lub więcej, zwraca ocenę „B”. W przeciwnym razie, jeśli [Średnia] wynosi 70 lub więcej, zwraca ocenę „C”. W przeciwnym razie, jeśli [Średnia] wynosi 60 lub więcej, zwraca ocenę „D”. W przeciwnym razie zwraca ocenę „F”.

Uwaga: Jeśli tworzenie pola obliczeniowego w kwerendzie za pomocą funkcji IIf Zamień znak równości (=) alias pola i dwukropek (:). Na przykład Stan: IIf ([DataWysyłki] < data (); "Wysłane", IIf ([DataWysyłki] = (Data), "Wysyłki dzisiaj", "Unshipped"))

Uwaga: Zrzeczenie dotyczące tłumaczenia maszynowego: Ten artykuł został przetłumaczony przez system komputerowy bez interwencji człowieka. Firma Microsoft udostępnia te tłumaczenia maszynowe, aby ułatwić użytkownikom, którzy nie znają języka angielskiego, korzystanie z zawartości dotyczącej produktów, usług i technologii firmy Microsoft. Ponieważ ten artykuł został przetłumaczony maszynowo, może zawierać błędy w słownictwie, składniowe lub gramatyczne.

Rozwijaj swoje umiejętności
Poznaj szkolenia
Uzyskuj nowe funkcje w pierwszej kolejności
Dołącz do niejawnych testerów pakietu Office

Czy te informacje były pomocne?

Dziękujemy za opinię!

Dziękujemy za opinię! Wygląda na to, że połączenie Cię z jednym z naszych agentów pomocy technicznej pakietu Office może być pomocne.

×