Applies ToAccess for Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Palauttaa yhden kahdesta osasta riippuen lauseke laskusta.

Voit käyttää IIf-funktiota missä tahansa, missä voit käyttää lausekkeita. IIf-funktiota käytetään määrittämään, onko toinen lauseke tosi vai epätosi. Jos lauseke on tosi, IIf palauttaa yhden arvon; jos se on epätosi, IIf palauttaa toisen arvon. Voit määrittää arvot, jotka IIf palauttaa.

Esimerkkejä

Syntaksi

IIf ( lauseke , tosiosa , epätosiosa )

IIf-funktiolla on seuraavat argumentit:

Argumentti

Kuvaus

lauseke

Pakollinen. Lauseke, jonka haluat arvioida.

tosiosa

Pakollinen. Palautettu arvo tai lauseke, jos lauseke on Tosi.

epätosiosa

Pakollinen. Arvo tai lauseke palautettu, jos lauseke on Epätosi.

Huomautuksia

IIf laskee aina sekä tosiosan että epätosiosan, vaikka funktio palauttaakin vain toisen niistä. Tämän vuoksi kannattaa pitää silmällä epätoivottuja vaikutuksia. Esimerkiksi jos epätosiosan laskeminen tuottaa nollallajakovirheen, virhe tapahtuu vaikka lauseke on Tosi.

Esimerkkejä

IIf-funktion käyttö lomakkeessa tai raportissa    Oletetaan, että sinulla on asiakastaulukko, jossa on kenttä nimeltä MaaTaiAlue. Lomakkeessa haluat näyttää, onko italia yhteyshenkilön äidinkieli. Voit lisätä ohjausobjektin ja käyttää sen Ohjausobjektin lähde -ominaisuudessa IIf-funktiota seuraavasti:

=IIf([MaaTaiAlue]="Italia", "italia", "Jokin muu kieli")

Kun avaat lomakkeen lomakenäkymässä, ohjausobjekti näyttää sanan "italia" aina, kun MaaTaiAlueen arvo on Italia, ja sanat "Jokin muu kieli" aina, kun MaaTaiAlueen arvo on muu kuin Italia.

IIf-funktion käyttö monimutkaisissa lausekkeissa    Voit käyttää mitä tahansa lauseketta minä tahansa IIf-lausekkeen osana. Voit myös asettaa IIf-lausekkeita sisäkkäin, jotta voit arvioida useita toisistaan riippuvaisia lausekkeita. Oletetaan jatkoa edelliseen esimerkkiin: haluat ehkä kokeilla useita MaaTaiAlue-arvoja ja näyttää sitten oikean kielen sen perusteella:

=IIf([MaaTaiAlue]="Italia", "italia", IIf([MaaTaiAlue]="Ranska", "ranska", IIf([MaaTaiAlue]="Saksa", "saksa", "Jokin muu kieli")))

Teksti "Jokin muu kieli" on sisimmän IIf-funktion argumentin epätosiosa. Koska jokainen sisäkkäinen IIf-funktio on sen sisältävän IIf-funktion epätosiosa-argumentti, teksti "Jokin muu kieli" palautetaan vain, jos kaikkien IIf-funktioiden lausekeargumenttien arvoksi tulee Epätosi.

Oletetaan toisena esimerkkinä, että työskentelet kirjastossa. Kirjastotietokannassa on taulukko Lainat, joka sisältää kentän Määräpäivä, jossa on kirjan palautuksen määräpäivä. Voit luoda lomakkeen, joka ilmoittaa lainatun kohteen tilan ohjausobjektissa käyttämällä IIf-funktiota kyseisen ohjausobjektin Ohjausobjektin lähde -ominaisuudessa seuraavasti:

=IIf([Määräpäivä]<Päivämäärä(),"MYÖHÄSSÄ",IIf([Määräpäivä]=Päivämäärä(),"Määräpäivä tänään","Ei vielä erääntynyt"))

Kun avaat lomakkeen lomakenäkymässä, ohjausobjekti näyttää tekstin "MYÖHÄSSÄ", jos Määräpäivän arvo on pienempi kuin kuluvan päivän päivämäärä, "Määräpäivä tänään", jos se on sama kuin kuluva päivä ja muuten "Ei vielä erääntynyt".

Huomautus: Jos haluat käyttää loogisia operaattoreita, kuten And tai Or, IIf-funktion lausekeosassa, sinun täytyy sulkea ne Laske-funktioon. Saat lisätietoja esimerkkitaulukosta.

IIf-funktion käyttö kyselyssä    

IIf-funktiota käytetään usein kyselyiden laskettujen kenttien luomiseen. Syntaksi on sama, mutta kyselyssä sinun täytyy lisätä lausekkeen eteen kentän tunnus ja kaksoispiste (:) yhtäsuuruusmerkin (=) asemesta. Edellisessä esimerkissä kirjoittaisit siis kyselyn rakenneruudukon Kenttä-riville seuraavasti:

Kieli: IIf([MaaTaiAlue]="Italia", "italia", "Jokin muu kieli")

Tässä tapauksessa "Kieli:" on kentän tunnusnimi.

Lisätietoja kyselyjen ja laskettujen kenttien luomisesta on artikkelissa Yksinkertaisen valintakyselyn luominen.

IIf-funktion käyttö VBA-koodissa    

Huomautus: Seuraavissa esimerkeissä kerrotaan, kuinka tätä funktiota käytetään Visual Basic for Applications (VBA) -moduulissa. Jos haluat lisätietoja VBA:n käytöstä, valitse Sovelluskehittäjän opasHaku-kentän viereisestä luettelosta ja anna yksi tai useampi hakuehto hakukenttään.

Tässä esimerkissä käytetään IIf-funktiota CheckIt-toimintosarjan TestMe-parametrin laskemiseen, joka palauttaa sanan "Suuri", jos määrä on suurempi kuin 1000, tai muussa tapauksessa sanan "Pieni".

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

Lisää esimerkkejä

Lauseke

Tulokset

=IIf([Lentokenttäkoodi]="ORD","Chicago",IIf([Lentokenttäkoodi]="ATL","Atlanta",IIf([Lentokenttäkoodi]="SEA","Seattle","Muu")))

Jos [Lentokenttäkoodi] on "ORD", palauta "Chicago". Muuten, jos [Lentokenttäkoodi] on "ATL", palauta "Atlanta". Muuten, jos [Lentokenttäkoodi] on "SEA", palauta "Seattle". Muuten palauta "Muu".

=IIf([Lähetyspäivä]<Päivämäärä(),"Lähetetty",IIf([Lähetyspäivä]=Päivämäärä(),"Lähetetään tänään","Ei lähetetty"))

Jos [Lähetyspäivä] on ennen tämän päivän päivämäärää, palauta "Lähetetty". Muuten, jos [Lähetyspäivä] on sama kuin tämän päivän päivämäärä, palauta "Lähetetään tänään". Muuten palauta "Ei lähetetty".

=IIf([Ostopäivä]<#1/1/2008#,"Vanha","Uusi")

Jos [Ostopäivä] on ennen 1.1.2008, palauta "vanha". Muuten palauta "Uusi".

=IIf(Laske([Volttia] 12:n ja15:n välillä JA [Ampeerit] 0,25:n ja 0,3:n välillä),"OK","Ei kalibroitu")

Jos [Voltit] on 12:n ja 15:n välillä ja [Ampeerit] on 0,25:n ja 0,3:n välillä, palauta "OK". Muuten palauta "Ei kalibroitu".

=IIf(Laske([MaaTaiAlue] kohteessa ("Kanada","USA","Meksiko")),"Pohjois-Amerikka","Muu")

Jos [MaaTaiAlue] on "Kanada", "USA" tai "Meksiko", palauta "Pohjois-Amerikka". Muuten palauta "Muu".

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

Jos [Keskiarvo] on 90 tai suurempi, palauta "A". Muuten, jos [Keskiarvo] on 80 tai suurempi, palauta "B". Muuten, jos [Keskiarvo] on 70 tai suurempi, palauta "C". Muuten, jos [Keskiarvo] on 60 tai suurempi, palauta "D". Muuten palauta "F".

Huomautus: Jos luot IIf-funktiolla lasketun kentän kyselyyn, korvaa yhtäsuuruusmerkki (=) kentän tunnuksella ja kaksoispisteellä (:). Esimerkki: Tila: IIf([Lähetyspäivä]<Päivämäärä(),"Lähetetty",IIf([Lähetyspäivä]=Päivämäärä(),"Lähetetään tänään","Ei lähetetty"))

Tarvitsetko lisäohjeita?

Haluatko lisää vaihtoehtoja?

Tutustu tilausetuihin, selaa harjoituskursseja, opi suojaamaan laitteesi ja paljon muuta.

Osallistumalla yhteisöihin voit kysyä kysymyksiä ja vastata niihin, antaa palautetta sekä kuulla lisää asiantuntijoilta, joilla on runsaasti tietoa.