Tips og tricks

Den nye HVISER-funktion

I Excel 2016 er der kommet en ny udgave af HVIS-funktionen [IF], nemlig funktionen HVISER [IFS], der kontrollerer om en eller flere betingelser er opfyldt og returnerer værdien fra den første betingelse, der evalueres sand.

=HVISER(LogiskTest1; VærdiVedSand1; [LogiskTest2; VærdiVedSand2...LogiskTest127; VærdiVedSand127])
=IFS(LogiskTest1; VærdiVedSand1; [LogiskTest2; VærdiVedFalsk2...LogiskTest127; VærdiVedSand127])

Denne funktion gør, at du ikke behøver at indlejre flere HVIS-funktioner inden i hinanden. Funktionen kan indeholde op til 127 betingelser med tilhørende værdier, men det kan dog ikke anbefales at bruge så mange – det bliver svært at holde styr på.

NOTEHvis du åbner projektmappen i ældre versioner end Excel 2016, vil Excel vise fejlen #NAVN i de celler, der anvender HVISER-funktionen.

Den nye Excel-funktioner HVISER

Lad os kigge på et eksempel på brug af funktionen, som jeg har skrevet den i celle D5:

=HVISER(C5>=80;”Flot”;C5>=70;”Bestået”;C5<>””;”Dumpet”;SAND;””)

Hvis værdien i celle C5 er over eller lig med 80, så skriver Excel Flot i cellen; hvis værdien i celle C5 er mellem 70 og 80, så skriver Excel Bestået. Hvis der ellers er skrevet noget i cellen, så skrives der Dumpet og i alle andre tilfælde skriver Excel ingenting.

Bemærk følgende forhold i forbindelse med HVISER-funktionen:

  • Hvis du vil angive et standardresultat, skal du selv angive en betingelse, der altid vil være sand for dit sidste LogiskTest-argument, fx SAND eller 1=1. Den tilhørende værdi returneres, hvis ingen af de øvrige betingelser er opfyldt.
  • Hvis et LogiskTest-argument anvendes uden en tilhørende VærdiVedSand-værdi, viser funktionen fejlmeddelelsen: “Du har angivet for få argumenter for funktionen”.
  • Hvis et LogiskTest-argument evalueres og henviser til en anden værdi end SAND eller FALSK, returnerer funktionen fejlen #VÆRDI!
  • Hvis der ikke findes nogen SAND-betingelser, returnerer funktionen fejlen #I/T.

NOTEEksemplet herover er med vilje holdt meget simpelt. Skulle det have været lidt mere professionelt, så er det jo altid en dårlig ide at indtaste faste værdier (som fx skilleværdierne 80 og 70) direkte i formlerne. De skulle selvfølgelig have været defineret som forudsætningsceller med faste referencer, navngivne celler eller måske endda navngivne konstanter.