IIf İşlevi

bir ifade değerlendirmesine bağlı olarak iki bölümden birini döndürür.

İfadeleri kullanabileceğiniz her yerde IIf kullanabilirsiniz. Başka bir ifadenin doğru mu yoksa yanlış mı olduğunu belirlemek için IIf kullanırsınız. İfade true ise, IIf bir değer döndürür; false ise, IIf başka bir döndürür. IIf'in döndürdüğü değerleri belirtirsiniz.

Bazı örneklere bakın

Söz dizimi

IIf ( expr , truepart , falsepart )

IIf işlevinin söz diziminde şu bağımsız değişkenler bulunur:

Bağımsız değişken

Açıklama

ifade

Gerekli. Değerlendirmek istediğiniz ifade.

doğru bölüm

Gerekli. İfadeTrue ise değer veya ifade döndürülür.

yanlış bölüm

Gerekli. İfadeFalse ise değer veya ifade döndürülür.


Notlar

IIf , yalnızca birini döndürse bile her zaman hem truepart hem de falsepart değerini değerlendirir. Bu nedenle istenmeyen yan etkiler için watch gerekir. Örneğin, yanlış bölümün değerlendirilmesi sıfıra bölme hatasıyla sonuçlanırsa ifade Doğruolsa bile hata oluşur.

Örnekler

Form veya raporda IIf kullanma    CountryRegion adlı bir alan içeren bir Müşteriler tablonuz olduğunu varsayalım. Formda, kişinin ilk dilinin İtalyanca olup olmadığını belirtmek istiyorsunuz. Denetim ekleyebilir ve Denetim Kaynağı özelliğinde IIf kullanabilirsiniz, örneğin:

=IIf([CountryRegion]="Italy", "İtalyanca", "Başka bir dil")

Formu Form görünümünde açtığınızda, ÜlkeBölge değeri İtalya olduğunda denetim "İtalyanca" ve CountryRegion başka bir değer olduğunda "Başka bir dil" görüntüler.

Karmaşık ifadelerde IIf kullanma    Herhangi bir ifadeyi bir IIf deyiminin herhangi bir parçası olarak kullanabilirsiniz. Ayrıca IIf ifadelerini "iç içe yerleştirerek" bir dizi bağımlı ifadeyi değerlendirmenizi sağlayabilirsiniz. Yukarıdaki örnekten devam etmek için, birkaç farklı CountryRegion değeri için test etmek ve sonra hangi değerin varolduğuna bağlı olarak uygun dili görüntülemek isteyebilirsiniz:

=IIf([CountryRegion]="Italy", "Italian", IIf([CountryRegion]="France", "French", IIf([CountryRegion]="Germany", "German", "Some other language")))

"Başka bir dil" metni, en içteki IIf işlevinin falsepart bağımsız değişkenidir. İç içe yerleştirilmiş her IIf işlevi, onu içeren IIf işlevinin falsepart bağımsız değişkeni olduğundan, "Başka bir dil" metni yalnızca tüm IIf işlevlerinin ifade bağımsız değişkenleri False olarak değerlendirilirse döndürülür.

Başka bir örnek için bir kitaplıkta çalıştığınızı varsayalım. Kitaplık veritabanında, belirli bir kitabın geri dönüş tarihini içeren Son Tarih adlı bir alan içeren Kullanıma Almalar adlı bir tablo vardır. Denetimin Denetim Kaynağı özelliğindeki IIf işlevini kullanarak denetimdeki kullanıma alınmış bir öğenin durumunu gösteren bir form oluşturabilirsiniz, örneğin:

=IIf([Due Date]<Date(),"OVERDUE",IIf([Due Date]=Date(),"Due today","Not Yet Due"))

Formu Form görünümünde açtığınızda, Son Tarih değeri geçerli tarihten küçükse denetim "SÜRESI GEÇMIŞ", geçerli tarihe eşitse "Son tarihi bugün" ve değilse "Henüz Son Tarihi Yok" değerini görüntüler.

Not: IIf işlevinin ifade bağımsız değişkeninde "And" veya "Or" gibi mantıksal işleçleri kullanmak için, mantıksal ifadeyi Değerlendirme işlevine dahil etmeniz gerekir. Aşağıdaki örnek tabloya bakın.

Sorguda IIf kullanma    

IIf işlevi genellikle sorgularda hesaplanan alanlar oluşturmak için kullanılır. Söz dizimi aynıdır; bir sorguda ifadenin başına eşittir işareti (=) yerine bir alan diğer adı ve iki nokta (:) kullanmanız gerekir. Yukarıdaki örneği kullanmak için, sorgu tasarım kılavuzunun Alan satırına aşağıdakileri yazarsınız:

Dil: IIf([CountryRegion]="italy", "İtalyanca", "Başka bir dil")

Bu durumda, "Language:" alan diğer adıdır.

Sorgular ve hesaplanan alanlar oluşturma hakkında daha fazla bilgi için Basit seçme sorgusu oluşturma makalesine bakın.

VBA kodunda IIf kullanma    

Not: Aşağıdaki örneklerde, bu işlevin Visual Basic for Applications (VBA) modülünde kullanımı gösterilir. VBA ile çalışma hakkında daha fazla bilgi için, rama'nın yanındaki açılan listede Geliştirici Başvurusu'nu seçin ve arama kutusuna bir veya birden çok terim yazın.

Bu örnek, CheckIt yordamının TestMe parametresini değerlendirmek için IIf işlevini kullanır ve tutar 1000'den büyükse "Büyük" sözcüğünü döndürür; aksi takdirde, "Küçük" sözcüğünü döndürür.

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

Diğer örnekler

Expression

Sonuçlar

=IIf([AirportCode]="ORD","Chicago",IIf([AirportCode]="ATL","Atlanta",IIf([AirportCode]="SEA","Seattle","Diğer")))

[AirportCode] "ORD" ise , "Chicago" döndür. Aksi takdirde, [AirportCode] "ATL" ise "Atlanta" değerini döndürebilirsiniz. Aksi takdirde, [AirportCode] "SEA" ise "Seattle" değerini döndürebilirsiniz. Aksi takdirde "Diğer" değerini döndürebilirsiniz.

=IIf([ShipDate]<Date(),"Shipped",IIf([ShipDate]=Date(),"Shipping today","Unshipped"))

[ShipDate] bugünün tarihinden önceyse, "Sevk Edildi" değerini iade edin. Aksi takdirde, [ShipDate] bugünün tarihine eşitse, "Sevkiyat bugün" değerini iade edin. Aksi takdirde, "Gönderilmedi" ifadesini döndürebilirsiniz.

=IIf([PurchaseDate]<#1/1/2008#,"Old","New")

[PurchaseDate] 1/1/2008 tarihinden önceyse, "Eski" değerini döndürür. Aksi takdirde "Yeni" değerini döndürebilirsiniz.

=IIf(Eval([Volts] Between 12 and 15 and [Amps] Between 0.25 and 0.3),"Ok","Out of calibration")

[Volts] 12 ile 15 arasındaysa ve [Amps] 0,25 ile 0,3 arasındaysa, "Tamam" değerini döndürür. Aksi takdirde "Kalibrasyon dışı" değerini döndürebilirsiniz.

=IIf(Eval([CountryRegion] In ("Canada","USA","Mexico")),"Kuzey Amerika","Diğer")

[CountryRegion] "Canada", "USA" veya "Mexico" ise, "Kuzey Amerika" döndür. Aksi takdirde "Diğer" değerini döndürebilirsiniz.

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

[Ortalama] 90 veya daha büyükse, "A" döndür. Aksi takdirde, [Ortalama] 80 veya daha büyükse "B" döndürür. Aksi takdirde, [Ortalama] 70 veya daha büyükse ,"C" döndürür. Aksi takdirde, [Ortalama] 60 veya daha büyükse "D" döndürür. Aksi takdirde "F" döndürebilirsiniz.

Not: Sorguda hesaplanan alan oluşturmak için IIf işlevini kullanıyorsanız, eşittir işaretini (=) alan diğer adı ve iki nokta üst üste (:) ile değiştirin. Örneğin, Durum: IIf([ShipDate]<Date(),"Shipped",IIf([ShipDate]=Date(),"Shipping today","Unshipped"))

Bu bilgi yararlı oldu mu?

Gizliliğinizi korumak için lütfen görüşlerinize iletişim bilgilerinizi eklemeyin. Şunu gözden geçirin: Gizlilik ilkesi.