Excels IF-funktion är som den schweiziska armékniven med Excel-funktioner. Verkligen, det används i många situationer. Ofta kan du använda Excels IF-funktion med andra funktioner. IF, strukturellt, är lätt att förstå. Excel IF-funktionen tar tre argument:
- Ett test som ger ett sant eller falskt svar. Till exempel kan testet "är värdet i cell A5 lika med värdet i cell A8" bara ha ett av två möjliga svar, ja eller nej. I datorsnack är det sant eller falskt. Det här är inte en beräkning, märk väl, utan en jämförelse.
- Datan som ska returneras av IF-funktionen om testet är sant.
- Datan som ska returneras av IF-funktionen om testet är falskt.
Låter lätt nog. Här är några exempel:
| Fungera |
Kommentar |
| =OM(D10>D20, D10, D20) |
Om värdet i D10 är större än värdet i D20, returneras värdet i D10 eftersom testet är sant. Om värdet i D10 inte är större än — det vill säga mindre eller lika med — värdet i D20, returneras värdet i D20. Om värdena i D10 och D20 är lika, returnerar testet falskt och värdet i D20 returneras. |
| =IF(D10>D20, "Goda nyheter!", "Dåliga nyheter!") |
Om värdet i D10 är större än värdet i D20 visas texten "Good News!" returneras. Annars, "dåliga nyheter!" returneras. |
| =OM(D10>D20, "", "Dåliga nyheter!") |
Om värdet i D10 är större än värdet i D20, returneras ingenting . Annars, "dåliga nyheter!" returneras. Observera att det andra argumentet är ett par tomma citattecken. |
| =OM(D10>D20, "Goda nyheter!", "") |
Om värdet i D10 är större än värdet i D20, "Goda nyheter!" returneras. Annars returneras ingenting . Observera att det tredje argumentet är tomma citattecken. |
En viktig aspekt att notera om att använda IF: att låta det andra eller tredje argumentet inte returnera något. En tom sträng returneras, och det bästa sättet att göra detta är att placera två dubbla citattecken tillsammans med ingenting i mitten. Resultatet är att cellen som innehåller OM-funktionen förblir tom.
IF låter dig därför ställa in två resultat att returnera: ett för när testet är sant och ett annat för när testet är falskt. Varje resultat kan vara ett tal, viss text, en funktion eller formel, eller till och med tomt.
Som du ser i föregående exempel är en vanlig användning av IF att se hur två värden jämförs och returnerar antingen det ena värdet eller det andra, beroende på hur du ställer in testet i det första argumentet.
IF används ofta som en valideringskontroll för att förhindra fel . Anta att du har ett ekonomiskt kalkylblad som använder en variabel procentsats i sina beräkningar. Användaren måste ange denna procentandel varje dag, men den får aldrig vara större än 10 procent. För att förhindra risken för fel kan du använda IF-funktionen för att visa ett felmeddelande i den intilliggande cellen om du av misstag anger ett värde utanför det tillåtna intervallet. Förutsatt att procentsatsen skrivs in i cell A3, här är den obligatoriska OM-funktionen:
=OM(A3>.1, "FEL: % i A3 ÄR FÖR STOR", "")
Följande bild visar hur IF kan användas i en affärsapplikation. En fiktiv butiksbutik - Ken's Guitars (ganska snäll, tycker du inte?) - håller koll på inventeringen i ett Excel-kalkylblad.

Håller ett öga på lager i gitarrbutiken.
Kolumn D visar lagernivåerna och kolumn E visar omordningsnivåerna. Det fungerar så här: När en produkts lagernivå är samma eller lägre än beställningsnivån är det dags att beställa mer av produkten. Cellerna i kolumn F innehåller en formel.
Excel-formeln i cell F8 är =IF(D8<>. Den säger att om antalet Stratoblaster 9000-gitarrer i lager är samma eller mindre än beställningsnivån, returnera beställning. Om antalet i lager är större än beställningsnivån , returnera ingenting. Ingenting returneras eftersom tre finns i lager och beställningsnivån är två. I nästa rad är antalet Flying Xs lika med beställningsnivån, därför visar cell F9 Beställning.
Det är enkelt att använda Excels IF-funktion. Följ dessa steg:
Ange två värden i ett kalkylblad. Dessa värden bör ha viss betydelse för dig, som exemplet på lagernivåer som visas ovan.
Klicka på cellen där du vill att resultatet ska visas.
Skriv =IF( för att starta funktionen.
Bestäm vilket test du vill utföra. Du kan se om de två värdena är lika; om den ena är större än den andra; om subtrahering av det ena från det andra är större än, lika med eller mindre än 0; och så vidare. För att till exempel avgöra om det första värdet är lika med det andra värdet klickar du på den första cellen (eller anger dess adress), anger ett likhetstecken (=) och klickar sedan på den andra cellen (eller anger dess adress).
Skriv ett kommatecken (,).
Ange resultatet som ska visas om testet är sant .
Ange till exempel "Värdena är lika". Texten ska stå inom citattecken.
Skriv ett kommatecken (,).
Ange resultatet som ska visas om testet är falskt. Ange till exempel "Värdena är inte lika" .
Skriv a) och tryck på Enter.
Excel IF-funktionen kan göra mycket mer. Kapslade IF-funktioner ger dig mycket mer flexibilitet när du utför tester på dina kalkylbladsdata. Lite uthållighet krävs för att ta sig igenom detta. Kapslad innebär att du kan placera en IF-funktion i en annan IF-funktion. Det vill säga, den inre IF placeras där det sanna eller falska argumentet i det yttre IF går (eller till och med använd interna IF för båda argumenten). Varför skulle du göra det här?
Här är ett exempel: Häromkvällen bestämde vi oss för var vi skulle äta middag. vi funderade på italienska och bestämde oss för att om vi gick till ett italienskt ställe och det serverade manicotti, skulle vi ha manicotti. Annars bestämde vi oss för att äta pizza.
Logiskt sett ser detta beslut ut så här:
Om restaurangen är italiensk, då om restaurangen serverar manicotti, då kommer vi att ha manicotti annars kommer vi att ha pizza
Det här ser mycket ut som programmeringskod. End If-satserna har lämnats avsiktligt för att förhindra förvirring eftersom IF-funktionen inte har något motsvarande värde. Det är allt! Notera att den inre IF-satsen har ett resultat för både sanna och falska möjligheter. Den yttre IF gör det inte. Här är strukturen som kapslade Excel IF-satser:
=OM(Restaurang=italienska, OM(restaurangen serverar manicotti, "manicotti", "pizza"), "")
Om restaurangen inte var italiensk, skulle det inte spela någon roll vad valet var (vilket indikeras av det tredje argumentet för att det yttre IF är tomt).
Du kan kapsla upp till 64 IF-satser, även om saker och ting sannolikt kommer att bli mycket komplicerade när du går över 4 eller 5.
Du kan använda en kapslad IF-sats för att öka sofistikeringen av inventeringsarbetsbladet ovanifrån. Följande bild har en extra kolumn: Hot Item. Ett hett objekt kan ha tre former:
- Om lagernivån är hälften eller mindre av återbeställningsnivån och det senaste försäljningsdatumet är inom de senaste 30 dagarna är detta en het artikel . Synpunkten är att på 30 dagar eller mindre sålde lagret ner till hälften eller mindre än beställningsnivån. Det gör att lagret vänder i snabb takt.
- Om lagernivån är hälften eller mindre av återbeställningsnivån och det sista försäljningsdatumet ligger inom de senaste 31–60 dagarna är detta en varm vara . Synpunkten är att lagret på 31–60 dagar såldes ner till hälften eller mindre än efterbeställningsnivån. Det innebär att lagret vänder i medeltakt.
- Om inget av de två föregående villkoren är uppfyllt, tilldelas objektet ingen särskild status.

Letar efter heta inventarier.
Det finns heta föremål och det finns varma föremål. Båda måste uppfylla det gemensamma kriteriet att lagret är 50 procent eller mindre av återbeställningsnivån. Först efter att detta första villkor är uppfyllt kommer det andra kriteriet — antalet dagar sedan den senaste beställningen — in i bilden. Låter som en kapslad IF för mig! Här är formeln i cell G8:
=OM(D8<><><>
Okej, ta ett andetag.
Den yttre IF testar om lagret i kolumn D är lika med eller mindre än hälften (50 procent) av återbeställningsnivån. Den del av formeln som gör det är =IF(D8<>. Detta test ger naturligtvis ett sant eller falskt svar. Om det är falskt tas den falska delen av det yttre IF (som bara är en tom sträng finns i slutet av formeln: "")).
Det lämnar hela mittdelen att vada igenom. Stanna med det!
Om det första testet är sant, tas den sanna delen av den yttre IF. Det råkar vara så att den här sanna delen är en annan IF-funktion:
OM(NU()-C8<><>
Det första Excel-argumentet i den inre IF testar om antalet dagar sedan det senaste beställningsdatumet (i kolumn C) är mindre än eller lika med 30. Du gör detta genom att subtrahera det sista beställningsdatumet från idag, som erhålls från funktionen NU .
Om testet är sant och det sista beställningsdatumet är inom de senaste 30 dagarna, HOT! returneras. En het säljare verkligen! Om testet är falskt ... vänta, vad är det här? Ännu en IF-funktion! Ja: en OM inuti en OM i en OM. Om antalet dagar sedan det senaste beställningsdatumet är större än 30, testar nästa kapslade IF om antalet dagar är inom de senaste 60 dagarna:
OM(NU()-C8<>
Om detta test är sant, Varmt! returneras. Om testet är falskt returneras ingenting.
Några viktiga punkter om detta IF-uttalande på tre nivåer:
- IF som testar om antalet förflutna dagar är 30 eller färre har ett värde att returnera om sant (HOT!) och ett värde att returnera för falskt (vad som än returneras av nästa kapslade IF).
- Den yttre IF och den innersta IF returnerar ingenting när deras test är falskt.
- På ytan skulle testet för 60 eller färre dagar också fånga ett datum som är 30 dagar eller färre sedan det senaste beställningsdatumet. Detta är inte riktigt vad som är meningen. Testet bör vara om antalet förflutna dagar är 60 eller färre men mer än 30. Du behöver faktiskt inte stava det på det här sättet, eftersom formeln kom till punkten att testa för 60-dagarströskeln bara för att 30 -dagströskeln har redan misslyckats. Måste se upp för dessa saker!