Returnerer én av to deler, avhengig av evalueringen av en uttrykk.

Du kan bruke IIf hvor som helst du kan bruke uttrykk. Du bruker IIf til å fastslå om et annet uttrykk er sant eller usant. Hvis uttrykket er sant, returnerer IIf én verdi; hvis den er usann, returnerer IIf en annen. Du angir verdiene IIf returnerer.

Se noen eksempler

Syntaks

IIf ( uttr , sann del, usann del)

Syntaksen for funksjonen IIf har disse argumentene:

Argument

Beskrivelse

uttr

Obligatorisk. Uttrykk du vil evaluere.

sann del

Obligatorisk. Verdi eller uttrykk som returneres hvis uttr er Sann.

usann del

Obligatorisk. Verdi eller uttrykk som returneres hvis uttr er Usann.


Kommentarer

IIf evaluerer alltid både sann del og usann del,selv om den bare returnerer én av dem. Derfor bør du se etter uønskede sideeffekter. Hvis for eksempel evaluering av usann del resulterer i en deling med null feil, oppstår det en feil selv om uttr er Sann.

Eksempler

Bruke IIf i et skjema eller en rapport    La oss si at du har en kundetabell som inneholder et felt kalt LandRegion. I et skjema vil du angi om italiensk er det første språket i kontakten. Du kan legge til en kontroll og bruke IIf i kontrollkildeegenskapen, slik som dette:

=IIf([CountryRegion]="Italy", "Italian", "Some other language")

Når du åpner skjemaet i skjemavisning, viser kontrollen «italiensk» når verdien for LandRegion er Italia, og «Et annet språk» når LandRegion er en annen verdi.

Bruke IIf i komplekse uttrykk    Du kan bruke et hvilket som helst uttrykk som en hvilken som helst del av en IIf-setning. Du kan også «neste» IIf-uttrykk, slik at du kan evaluere en serie med avhengige uttrykk. Hvis du vil fortsette med det forrige eksemplet, kan det hende du vil teste for flere forskjellige LandRegion-verdier og deretter vise riktig språk avhengig av hvilken verdi som finnes:

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

Teksten «Et annet språk» er argumentet usant for den innerste IIf-funksjonen. Siden hver nestede IIf-funksjon er argumentet usant i IIf-funksjonen som inneholder den, returneres teksten «Et annet språk» bare hvis alle uttr-argumentene i alle IIf-funksjonene evalueres til Usann.

Anta for eksempel at du arbeider på et bibliotek. Bibliotekdatabasen har en tabell med navnet Utsjekkinger som inneholder et felt kalt Forfallsdato, som inneholder datoen en bestemt bok forfaller. Du kan opprette et skjema som angir statusen til et utsjekket element i en kontroll, ved å bruke IIf-funksjonen i kontrollens Kontrollkilde-egenskap, slik som dette:

=IIf([Forfallsdato]<dato(),"FORFALT",IIf([Forfallsdato]=Dato(),"Forfaller i dag","Ikke forfalt ennå"))

Når du åpner skjemaet i skjemavisning, viser kontrollen «FORFALT» hvis verdien for forfallsdato er mindre enn gjeldende dato, «Forfaller i dag» hvis den er lik gjeldende dato og ikke forfaller ennå.

Obs!: Hvis du vil bruke logiske operatorer som «Og» eller «Eller» i uttr-argumentet for IIf-funksjonen, må du omslutte det logiske uttrykket i Eval-funksjonen. Se eksempeltabellen nedenfor.

Bruke IIf i en spørring    

IIf-funksjonen brukes ofte til å opprette beregnede felt i spørringer. Syntaksen er den samme, med unntaket at i en spørring må du innordne uttrykket med et feltalias og et kolon(:)i stedet for et likhetstegn(=). Hvis du vil bruke det forrige eksemplet, skriver du inn følgende i Felt-raden i utformingsrutenettet for spørringen:

Språk: IIf([LandRegion]="Italia", "Italiensk", "Et annet språk")

I dette tilfellet er «Språk:» feltaliaset.

Hvis du vil ha mer informasjon om hvordan du oppretter spørringer og beregnede felt, kan du se artikkelen Opprette en enkel utvalgsspørring.

Bruke IIf i VBA-kode    

Obs!: I eksemplene nedenfor vises bruken av denne funksjonen i en VBA-modul (Visual Basic for Applications). Hvis du vil ha mer informasjon om hvordan du arbeider med VBA, velger du Utviklerreferanse fra rullegardinlisten ved siden av Søk og skriver inn ett eller flere søkeord i søkeboksen.

Dette eksemplet bruker IIf-funksjonen til å evaluere TestMe-parameteren i CheckIt-prosedyren og returnerer ordet «Stor» hvis mengden er større enn 1000. Hvis ikke returneres ordet "Small".

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

Flere eksempler

Uttrykk

Resultater

=IIf([AirportCode]="ORD","Chicago",IIf([AirportCode]="ATL","Atlanta",IIf([AirportCode]="SEA","Seattle","Other")))

Hvis [AirportCode] er "ORD", returneres "Chicago". Hvis ikke, hvis [AirportCode] er "ATL", returnerer du "Atlanta". Hvis ikke, hvis [AirportCode] er "SEA", returneres "Seattle". Hvis ikke, returner «Annet».

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

Hvis [ShipDate] er før dagens dato, returneres "Shipped". Hvis ikke, hvis [ShipDate] er lik dagens dato, returneres "Levering i dag". Hvis ikke, returner «Unshipped».

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

Hvis [Kjøpsdato] er før 01.01.2008, returneres «Gammel». Ellers returnerer du «Ny».

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

Hvis [Volts] er mellom 12 og 15 og [Amps] er mellom 0,25 og 0,3, returneres "OK". Hvis ikke, returner "Out of calibration".

=IIf(Eval([CountryRegion] In ("Canada","USA","Mexico")),"North America","Other")

Hvis [LandRegion] er «Canada», «USA» eller «Mexico», returneres «Nord-Amerika». Hvis ikke, returner «Annet».

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

Hvis [Gjennomsnitt] er 90 eller større, returneres "A". Hvis ikke, hvis [Gjennomsnitt] er 80 eller større, returneres "B". Hvis ikke, hvis [Gjennomsnitt] er 70 eller større, returneres "C". Hvis ikke, hvis [Gjennomsnitt] er 60 eller større, returneres "D". Hvis ikke, returner "F".

Obs!: Hvis du bruker IIf-funksjonen til å opprette et beregnet felt i en spørring, erstatter du likhetstegnet(=)med et feltalias og et kolon(:). For eksempel Status: IIf([ShipDate]<Date(),"Shipped",IIf([ShipDate]=Date(),"Shipping today","Unshipped"))

Trenger du mer hjelp?

Utvid ferdighetene dine
Utforsk opplæring
Vær først ute med de nye funksjonene
Bli med i Microsoft Office Insider-deltakere

Var denne informasjonen nyttig?

Hvor fornøyd er du med språkkvaliteten?
Hva påvirket opplevelsen din?

Takk for tilbakemeldingen!

×