Med HVIS-funksjoner kan du foreta en logisk sammenligning mellom en verdi og hva du forventer, ved å teste for en betingelse og returnere et resultat hvis SANN eller USANN.
-
=HVIS(noe er SANN, gjøre noe, ellers gjør noe annet)
Et HVIS-uttrykk kan derfor ha to resultater. Det første resultatet er hvis sammenligningen er SANN, og det andre er hvis den er USANN.
HVIS-uttrykk er utrolig robuste og danner grunnlaget for mange regnearkmodeller, men de er også den opprinnelige årsaken til mange problemer i regnearket. Ideelt sett bør et HVIS-uttrykk gjelde for minimale vilkår, for eksempel han/hun, ja/nei/kanskje, for å nevne noen, men noen ganger kan det hende du må evaluere mer komplekse scenarioer som krever nesting* mer enn 3 HVIS-funksjonen sammen.
* «Nesting» refererer til praksisen med å slå sammen flere funksjoner i én formel.
Bruk HVIS-funksjonen, en av de logiske funksjonene, for å returnere én verdi hvis en betingelse er sann, og en annen verdi hvis den er usann.
Syntaks
HVIS(logisk_test; verdi_hvis_sann; [verdi_hvis_usann])
Eksempel:
-
=HVIS(A2>B2;"Over budsjettet";"OK")
-
=HVIS(A2=B2,B4-A4,"")
Argumentnavn |
Beskrivelse |
logisk_test (obligatorisk) |
Betingelsen du vil teste. |
verdi_hvis_sann (obligatorisk) |
Verdien som returneres hvis resultatet av logisk_test er SANN. |
verdi_hvis_usann (valgfritt) |
Verdien som returneres hvis resultatet av logisk_test er USANN. |
Merknader
Excel lar deg neste opptil 64 forskjellige HVIS-funksjoner, men det anbefales ikke å gjøre det. Hvorfor?
-
Flere HVIS-setninger krever mye tanke for å bygge riktig og sørge for at logikken kan beregne riktig gjennom hver betingelse helt til slutten. Hvis du ikke nester formelen 100 % nøyaktig, kan det fungere 75 % av tiden, men returnere uventede resultater 25 % av tiden. Dessverre er oddsen for at du fanger de 25% slanke.
-
Uttrykk med flere HVIS kan bli veldig vanskelig å vedlikeholde, særlig når du kommer tilbake litt senere og prøver å finne ut hva du, eller enda verre, noen andre prøvde å gjøre.
Hvis du finner deg selv med en HVIS-uttalelse som bare ser ut til å fortsette å vokse uten ende i sikte, er det på tide å sette ned musen og revurdere strategien din.
La oss se på hvordan du oppretter et komplekst nestet HVIS-uttrykk ved hjelp av flere IF-er, og når du skal erkjenne at det er på tide å bruke et annet verktøy i Excel-arsenalet.
Eksempler
Følgende er et eksempel på et relativt standard nestet HVIS-uttrykk som konvertere resultater fra studentprøver til de tilsvarende bokstavkarakterene.
-
=HVIS(D2>89,"A";HVIS(D2>79,"B";HVIS(D2>69,"C";HVIS(D2>59,"D";"F")))
Dette komplekse nestede HVIS-uttrykket følger en enkel logikk:
-
Hvis testresultatet (i celle D2) er større enn 89, får studenten en A
-
Hvis testresultatet (i celle D2) er større enn 79, får studenten en B
-
Hvis testresultatet er større enn 69, får studenten en C
-
Hvis testresultatet er større enn 59, får studenten en D
-
Ellers får studenten en F
Dette eksemplet er relativt trygt fordi det ikke er sannsynlig at korrelasjonen mellom testresultater og bokstavkarakterer endres, så det krever ikke mye vedlikehold. Men her er en tanke – hva om du trenger å segmentere karakterene mellom A+, A og A- (og så videre)? Nå må din fire betingelse HVIS-setning skrives om for å ha 12 betingelser! Slik vil formelen se ut nå:
-
=HVIS(B2>97,"A+",HVIS(B2>93,"A";HVIS(B2>89,"A-";HVIS(B2>87,"B+",HVIS(B2>83,"B";HVIS(B2>79,"B-",HVIS(B2>77,"C+",HVIS(B2>73,"C";HVIS(B2>69,"C-",HVIS(B2>57,"D+",HVIS(B2>53,"D";HVIS(B2>49,"D-";"F")))
Det er fortsatt funksjonelt nøyaktig og vil fungere som forventet, men det tar lang tid å skrive og lengre tid å teste for å sikre at den gjør det du vil. Et annet skarpt problem er at du har måttet skrive inn resultatene og tilsvarende bokstavkarakterer for hånd. Hva er oddsen for at du ved et uhell har en skrivefeil? Forestill deg at du gjør dette 64 ganger med desto mer komplekse betingelser. Jada, det er mulig, men vil du virkelig utsette deg for denne typen innsats og sannsynlige feil som vil være veldig vanskelig å oppdage?
Tips!: Alle funksjoner i Excel krever en begynnende og avsluttende parentes: (). Excel vil prøve å hjelpe deg med å finne ut hva som går hvor ved å fargelegge ulike deler av formelen når du redigerer den. Hvis du for eksempel skulle redigere formelen ovenfor når du flytter markøren forbi hver av de avsluttende parentesene ")", blir den tilsvarende venstreparentesen den samme fargen. Dette kan være spesielt nyttig i komplekse nestede formler når du prøver å finne ut om du har nok samsvarende parenteser.
Flere eksempler
Følgende er et svært vanlig eksempel på å beregne salgsprovisjon basert på oppnådd omsetning.
-
=HVIS(C9>15000,20%,HVIS(C9>12500,17.5%,HVIS(C9>10000,15%,HVIS(C9>7500,12.5%,HVIS(C9>5000,10%,0)))
Denne formelen sier at HVIS(C9 er større enn 15 000, returner 20 %, HVIS(C9 er større enn 12 500, returner 17,5 %, og så videre …
Selv om den er bemerkelsesverdig lik det tidligere karaktereksempelet, er denne formelen et godt eksempel på hvor vanskelig det kan være å opprettholde store HVIS-setninger – hva må du gjøre hvis organisasjonen bestemte seg for å legge til nye kompensasjonsnivåer og muligens også endre eksisterende dollar- eller prosentverdier? Du ville ha mye arbeid på hendene!
Tips!: Du kan sette inn linjeskift i formellinjen for å gjøre lange formler enklere å lese. Du trykker bare på ALT+ENTER før teksten du vil bryte til en ny linje.
Her er et eksempel på provisjonscenarioet med logikken ute av rekkefølge:
Kan du se hva som er galt? Sammenlign rekkefølgen på omsetningssammenligningene med det forrige eksemplet. Hvilken vei går denne? Det stemmer, det går fra bunnen opp ($ 5000 til $ 15.000), ikke omvendt. Men hvorfor skulle det være så viktig? Det er en stor sak fordi formelen ikke kan bestå den første evalueringen for noen verdi over $ 5000. La oss si at du har kr 12 500 i omsetning. HVIS-uttrykket returnerer 10 % fordi det er større enn USD 5000, og det stopper der. Dette kan være utrolig problematisk fordi i mange situasjoner går denne typen feil ubemerket til de har hatt en negativ innvirkning. Så vel vitende om at det er noen alvorlige fallgruver med komplekse nestede HVIS-uttalelser, hva kan du gjøre? I de fleste tilfeller kan du bruke FINN.RAD-funksjonen i stedet for å bygge en kompleks formel med HVIS-funksjonen. Ved hjelp av FINN.RAD må du først opprette en referansetabell:
-
=FINN.RAD(C2,C5:D17,2,SANN)
Denne formelen ber om å søke etter verdien i C2 i intervallet C5:C17. Hvis verdien blir funnet, returneres den tilsvarende verdien fra den samme raden i kolonne D.
-
=FINN.RAD(B9,B2:C6,2,SANN)
Denne formelen ser på samme måte etter verdien i celle B9 i intervallet B2:B22. Hvis verdien blir funnet, returneres den tilsvarende verdien fra den samme raden i kolonne C.
Obs!: Begge disse FINN.RAD-ene bruker argumentet SANN på slutten av formlene, noe som betyr at vi vil at de skal se etter et tilnærmet treff. Med andre ord vil det være samsvar med de nøyaktige verdiene i oppslagstabellen, samt eventuelle verdier som faller mellom dem. I dette tilfellet må oppslagstabeller være sortert i stigende rekkefølge, fra minst til størst.
FINN.RAD dekkes mye mer detaljert her, men dette er sikkert mye enklere enn et komplekst nestet HVIS-uttrykk på 12-nivå! Det finnes også andre mindre opplagte fordeler:
-
FINN.RAD-referansetabeller er åpenbare og lette å se.
-
Tabellverdier kan enkelt oppdateres, og du slipper å røre formelen hvis betingelsene dine endres.
-
Hvis du ikke vil at andre skal se eller forstyrre referansetabellen, plasserer du den bare i et annet regneark.
Visste du at?
Det finnes nå en HVIS.SETT-funksjon som kan erstatte flere, nestede HVIS-setninger med én enkelt funksjon. Så i stedet for det første karakter-eksemplet vårt som har 4 nestede HVIS-funksjoner:
-
=HVIS(D2>89,"A";HVIS(D2>79,"B";HVIS(D2>69,"C";HVIS(D2>59,"D";"F")))
Kan det gjøres mye enklere med én enkel HVIS.SETT-funksjon:
-
=HVIS.SETT(D2>89,"A",D2>79,"B",D2>69,"C",D2>59,"D",SANN,"F")
Funksjonen IFS er flott fordi du ikke trenger å bekymre deg for alle disse HVIS-setningene og parentesene.
Obs!: Denne funksjonen er bare tilgjengelig hvis du har et Microsoft 365-abonnement. Hvis du er en Microsoft 365-abonnent må du forsikre deg om at du har den nyeste versjonen av OfficeKjøp eller prøv Microsoft 365
Trenger du mer hjelp?
Du kan alltid spørre en ekspert i det tekniske fellesskapet for Excel eller få støtte i Fellesskap.
Beslektede emner
IFS funksjon (Microsoft 365, Excel 2016 og nyere) Funksjonen ANTALL.HVIS teller verdier basert på ett enkelt vilkår ANTALL.HVIS.SETT-funksjonen teller verdier basert på flere vilkår SUMMERHVIS-funksjonen summerer verdier basert på ett enkelt vilkår Funksjonen SUMMER.HVIS.SETT summerer verdier basert på flere vilkår OG-funksjonen FINN.RAD(funksjon) Oversikt over formler i ExcelSlik unngår du brutte formlerFinn feil i formler LogiskefunksjonerExcel-funksjoner (alfabetisk)Excel-funksjoner (etter kategori)