HVIS
Funktionen HVIS returnerer en af to værdier, afhængigt af om et angivet udtryk evalueres til den booleske værdi SAND eller FALSK.
HVIS(hvis-udtryk; hvis-sand; hvis-falsk)
hvis-udtryk: Et logisk udtryk. hvis-udtryk kan indeholde alt, så længe udtrykket kan evalueres som en boolesk værdi. Hvis udtrykket evalueres til et tal, anses 0 for at være FALSK, og alle andre tal anses for at være SANDE.
hvis-sand: Den værdi, der returneres, hvis hvis-udtryk er SANDT. hvis-sand kan indeholde alle værdier. Hvis hvis-sand udelades (der er et semikolon, men ingen værdi), og hvis-udtryk evalueres til SAND, returnerer HVIS 0.
hvis-falsk: Et valgfrit argument, der anfører den værdi, der returneres, hvis hvis-udtryk er FALSK. hvis-falsk kan indeholde alle værdier. Hvis hvis-falsk udelades (der er et semikolon, men ingen værdi), og hvis-udtryk evalueres til FALSK, returnerer HVIS 0. Hvis hvis-falsk udelades helt (der er intet semikolon efter hvis-sand), og hvis-udtryk evalueres til FALSK, returnerer HVIS resultatet FALSK.
Noter
Både hvis-sand og hvis-falsk kan indeholde yderligere HVIS-funktioner (kaldes ofte indlejrede HVIS-funktioner).
Brug HVIS til at foretage enkle sammenligninger |
---|
Nedenstående tabel viser en enkel måde at registrere elevkarakterer på. |
A | B | C | D | E | F | |
---|---|---|---|---|---|---|
1 | Elev | Testresultat 1 | Testresultat 2 | Endeligt resultat | Bogstavkarakter | Slutresultat |
2 | 1 | 56 | 59 | 59 | F | Ikke bestået |
3 | 2 | 75 | 84 | 84 | B | Bestået |
4 | 3 | 100 | 93 | 100 | A | Bestået |
Du kan bruge disse data til at udføre en enkel HVIS-sammenligning. Her er nogle af de måder, HVIS-funktionen kan bruges på: |
Returner en tekstværdi baseret på kriterier: I denne formel bruges følgende argumenter:
Denne formel tildeler et "Bestået"-resultat, hvis elev 1's testresultat er 60 eller derover; ellers returneres "Ikke bestået". |
Returner en numerisk værdi baseret på kriterier: I denne formel bruges følgende argumenter:
Denne formel beregner et endeligt resultat som det største af to testresultater. Du kan nemt ændre formlen til at gælde for en anden elev i tabellen ovenfor ved at ændre cellereferencerne, så de matcher den rette elevs resultater. |
Brug en indlejret HVIS-funktion til at teste for flere betingelser: Ovenstående formel tildeler et "Bestået"-resultat, hvis mindst et af elevens testresultater er 60 eller større. Ovenstående formel tildeler en bogstavkarakter baseret på elevens endelige resultat. Bemærk: For indlejrede HVIS-funktioner er rækkefølgen af sammenligninger vigtig, fordi formlen stopper efter det første sande udsagn. Hvis du f.eks. vil føje en ny betingelse til formlen for bogstavkarakteren, som hedder "ikke forsøgt", hvis en elev har resultatet 0, skal du tilføje den som den første betingelse. Hvis du tilføjer den til sidst, returneres "F", selvom resultatet er 0, fordi det allerede er blevet evalueret som mindre end 60. Det er også grunden til, at der ikke er behov for et separat hvis-udtryk for bogstavkarakteren "A": Hvis en elevs resultat ikke er "B", er det heller ikke nogen anden bogstavkarakter og må derfor være "A". |
Prøv selv |
---|
Hvis du vil se, hvordan HVIS-funktionen kan bruges i et Numbers-regneark, kan du oprette et nyt regneark med skabelonen "Karakterer". Fjern et navn i tabellen Klasseoversigt, og se, hvordan det ændrer værdien i kolonnen "Slutkarakter". Udforsk den funktion, der bruges i kolonnen "Slutkarakter". |
Brug HVIS med andre funktioner |
---|
Følgende formel fungerer sammen med ER.TOM for at bestemme, om en celle er tom. I denne formel bruges følgende argumenter:
Til mere komplekse tests kan du også kombinere HVIS med OG, ELLER og IKKE. |
Gå videre med HVISER |
---|
Funktionen HVISER kan bruges til at evaluere en række udtryk og returnere en værdi baseret på den første betingelse, der er sand, og dermed erstatte flere indlejrede HVIS-udsagn. |
Yderligere eksempler |
---|
=HVIS(A5>=0; "Ikke negativ"; "Negativ") returnerer teksten "Ikke negativ", hvis celle A5 indeholder et tal, der er større end eller lig med 0 eller en værdi, der ikke er et tal. Hvis celle A5 indeholder en værdi på mindre end 0, returnerer funktionen "Negativ". =IF(A5<>0, "Ikkenul", "Nul") returnerer teksten "Ikkenul", hvis celle A5 indeholder et tal, der ikke er 0. Hvis celle A5 indeholder 0, returnerer funktionen "Nul". =HVIS(HVIS.FEJL(ELLER(ER.LIGE(B4 B5); ER.ULIGE(B4 B5)); FALSK); "Alle tal"; "Ikke alle tal") returnerer teksten "Alle tal", hvis både celle B4 og B5 indeholder tal; ellers returneres teksten "Ikke alle tal". Det opnås ved test, hvor det undersøges, om summen af de to celler er lige eller ulige. Hvis cellen ikke er et tal, returnerer funktionerne LIGE og ULIGE en fejl, og funktionen HVIS.FEJL returnerer FALSK; ellers returnerer den SAND, da enten LIGE eller ULIGE er SAND. Så hvis B4 eller B5 ikke er et tal eller en boolesk værdi, returnerer HVIS hvis-falsk-udtrykket "Ikke alle tal"; ellers returnerer det hvis-sand-udtrykket "Alle tal". |
Eksempler – undgå fejl pga. division med 0 |
---|
Nogle gange er det ikke muligt at opbygge en tabel på en måde, så man undgår division med 0. Men hvis der sker division med 0, er resultatet en fejlværdi i cellen, hvilket som regel ikke er det ønskede resultat. Dette eksempel viser tre metoder, som du kan bruge til at undgå denne fejl. Antag, at celle D2 og E2 begge indeholder et tal. Det er muligt, at E2 indeholder 0. Du skal dividere D2 med E2, men vil undgå en fejl pga. division med 0. Med hver af de følgende tre metoder returneres 0, hvis celle E2 er lig med 0; ellers returnerer de resultatet af D2/E2. =HVIS(E2=0; 0; D2/E2) tester celle E2 direkte for at se, om den er 0. =HVIS.FEJL(D2/E2; 0) returnerer 0, hvis der opstår en fejl. Division med 0 er en fejl. =HVIS(ER.FEJL(D2/E2); 0; D2/E2) udfører en logisk test for at se, om D2/E2 er SAND. |
Eksempel med REGEX |
---|
Lad A1 indeholde "[email protected]" =HVIS(A1 = REGEX("([A-Z0-9a-z._% -] )@([A-Za-z0-9.-] \.[A-Za-z]{2,4})"), "Indeholder e-mail", "Ingen e-mail") returnerer "Indeholder e-mail". |