Innehållsförteckning
Många uppgifter som du utför i Excel innebär att du måste jämföra data i olika celler. För detta ändamål tillhandahåller Microsoft Excel sex logiska operatörer, som också kallas jämförelseoperatörer. Den här handledningen syftar till att hjälpa dig att förstå insikten om Excels logiska operatörer och skriva de mest effektiva formlerna för din dataanalys.
Excel logiska operatörer - översikt
En logisk operatör används i Excel för att jämföra två värden. Logiska operatörer kallas ibland booleska operatörer eftersom resultatet av jämförelsen i varje givet fall bara kan vara antingen VARA eller FALSKT.
Sex logiska operatörer finns tillgängliga i Excel. I följande tabell förklaras vad var och en av dem gör och teorin illustreras med formelexempel.
Villkor | Operatör | Exempel på en formel | Beskrivning |
Lika med | = | =A1=B1 | Formeln returnerar TRUE om ett värde i cell A1 är lika med värdena i cell B1, annars FALSE. |
Inte lika med | =A1B1 | Formeln returnerar TRUE om värdet i cell A1 inte är lika med värdet i cell B1, annars FALSE. | |
Större än | > | =A1>B1 | Formeln returnerar TRUE om värdet i cell A1 är större än värdet i cell B1, annars returnerar den FALSE. |
Mindre än | < | =A1 Formeln returnerar TRUE om värdet i cell A1 är mindre än värdet i cell B1, annars FALSE. | |
Större än eller lika med | >= | =A1>=B1 | Formeln returnerar TRUE om ett värde i cell A1 är större än eller lika med värdena i cell B1, annars FALSE. |
Mindre än eller lika med | <= | =A1<=B1 | Formeln returnerar TRUE om ett värde i cell A1 är mindre än eller lika med värdena i cell B1, annars FALSE. |
Skärmbilden nedan visar de resultat som returneras av Lika med , Inte lika med , Större än och Mindre än logiska operatörer:
Det kan tyckas att tabellen ovan täcker allt och att det inte finns något mer att prata om. Men i själva verket har varje logisk operatör sina egna särdrag och om du känner till dem kan du dra nytta av Excel-formlerna.
Använda logisk operatör "Lika med" i Excel
Lika med Den logiska operatorn (=) kan användas för att jämföra alla datatyper - siffror, datum, textvärden, boolska tecken - samt resultat som returneras av andra Excel-formler:
=A1=B1 | Återger TRUE om värdena i cellerna A1 och B1 är desamma, annars FALSE. |
=A1="apelsiner" | Återger TRUE om cellerna A1 innehåller ordet "oranges", annars FALSE. |
=A1=TRUE | Återger TRUE om cellerna A1 innehåller det booleska värdet TRUE, annars återges FALSE. |
=A1=(B1/2) | Återger TRUE om ett tal i cell A1 är lika med kvoten av divisionen av B1 med 2, annars FALSE. |
Exempel 1. Användning av "lika med"-operatorn med datum
Du kanske blir förvånad över att veta att Lika med kan inte jämföra datum lika enkelt som siffror. Om cellerna A1 och A2 till exempel innehåller datumet "12/1/2014", kan formeln =A1=A2
återger TRUE precis som det ska.
Men om du försöker med en av följande =A1=12/1/2014
eller . =A1="12/1/2014"
får du FALSE som resultat. Lite oväntat, eller hur?
Poängen är att Excel lagrar datum som siffror som börjar med 1-Jan-1900, som lagras som 1. Datumet 12/1/2014 lagras som 41974. I formlerna ovan tolkar Microsoft Excel "12/1/2014" som en vanlig textsträng, och eftersom "12/1/2014" inte är lika med 41974, returneras FALSK.
För att få rätt resultat måste du alltid omsluta ett datum i funktionen DATEVALUE, så här =A1=DATEVALUE("12/1/2014")
Observera: Funktionen DATEVALUE måste också användas med andra logiska operatörer, vilket visas i exemplen nedan.
Samma tillvägagångssätt bör tillämpas när du använder Excels operator lika med i det logiska testet av IF-funktionen. Du kan hitta mer information och några formelexempel i den här handledningen: Using Excel IF function with dates (Användning av Excel IF-funktionen med datum).
Exempel 2. Användning av operatorn "Lika med" med textvärden
Använda Excels Lika med med textvärden kräver inga extra vändningar. Det enda du bör tänka på är att Lika med logisk operatör i Excel är Skiftlägeskänslig , vilket innebär att skillnader i skiftlägen ignoreras när textvärden jämförs.
Om cell A1 till exempel innehåller ordet " apelsiner " och cell B1 innehåller " Apelsiner ", formeln =A1=B1
kommer att återge TRUE.
Om du vill jämföra textvärden med hänsyn till skillnader mellan olika bokstäver bör du använda funktionen EXACT i stället för funktionen Lika med Syntaxen för EXACT-funktionen är så enkel som:
EXACT(text1, text2)Där text 1 och text2 är de värden som du vill jämföra. Om värdena är exakt lika, inklusive skiftläget, returnerar Excel TRUE, annars returnerar Excel FALSE. Du kan också använda EXACT-funktionen i IF-formler när du behöver en jämförelse av textvärden som tar hänsyn till skiftläget, vilket visas i skärmdumpen nedan:
Om du vill jämföra längden på två textvärden kan du använda funktionen LEN i stället, till exempel =LEN(A2)=LEN(B2)
eller . =LEN(A2)>=LEN(B2)
.
Exempel 3. Jämförelse av booleska värden och tal
Det finns en utbredd uppfattning att det booleska värdet TRUE i Microsoft Excel alltid motsvarar 1 och FALSE 0. Detta är dock bara delvis sant, och nyckelordet här är "alltid" eller mer exakt "inte alltid" : )
När du skriver ett logiskt uttryck "lika med" som jämför ett boolskt värde och ett tal, måste du särskilt ange för Excel att ett icke-numeriskt boolskt värde ska behandlas som ett tal. Du kan göra detta genom att lägga till det dubbla minustecknet framför ett boolskt värde eller en cellreferens, t.ex. =A2=--TRUE
eller . =A2=--B2
.
Det första minustecknet, som tekniskt sett kallas för den unära operatorn, omvandlar TRUE/FALSE till -1/0, och det andra unära tecknet förnekar värdena och omvandlar dem till +1 och 0. Det är förmodligen lättare att förstå om man tittar på följande skärmdump:
Observera: Du bör lägga till den dubbla unära operatören före ett boolska tal när du använder andra logiska operatörer, t.ex. inte är lika med , är större än eller . mindre än för att korrekt jämföra numeriska och booleska värden.
När du använder logiska operatörer i komplexa formler kan du också behöva lägga till den dubbla unäraste delen före varje logiskt uttryck som returnerar TRUE (sant) eller FALSE (falskt) som resultat. Här är ett exempel på en sådan formel: SUMPRODUCT (summa) och SUMIFS (summering) i Excel.
Använda logisk operatör "Inte lika med" i Excel
Du använder Excels Inte lika med operatören () när du vill försäkra dig om att en cells värde inte är lika med ett angivet värde. Användningen av operatorn Inte lika med är mycket likt användningen av Lika med som vi diskuterade för en stund sedan.
De resultat som returneras av Inte lika med operatorn är analog med de resultat som Excel-funktionen NOT ger som vänder på värdet av sitt argument. I följande tabell finns några exempel på formler.
Inte lika med operatören | fungerar inte | Beskrivning |
=A1B1 | = INTE(A1=B1) | Återger TRUE om värdena i cellerna A1 och B1 inte är desamma, annars FALSE. |
=A1 "apelsiner" | =NOT(A1="apelsiner") | Återger TRUE om cell A1 innehåller något annat värde än "oranges", FALSE om den innehåller "oranges" eller "ORANGES" eller "Oranges" osv. |
=A1TRUE | =NOT(A1=TRUE) | Återger TRUE om cell A1 innehåller något annat värde än TRUE, annars FALSE. |
=A1(B1/2) | = INTE(A1=B1/2) | Återger TRUE om ett tal i cell A1 inte är lika med kvoten av divisionen av B1 med 2, annars FALSE. |
=A1DATEVALUE("12/1/2014") | =NOT(A1=DATEVALUE("12/1/2014")) | Återger TRUE om A1 innehåller något annat värde än datumet 1-dec-2014, oavsett datumformat, och FALSE i annat fall. |
Större än, mindre än, större än eller lika med, mindre än eller lika med
Du använder dessa logiska operatörer i Excel för att kontrollera hur ett tal är jämfört med ett annat. Microsoft Excel tillhandahåller fyra jämförelseoperatorer vars namn är självförklarande:
- Större än (>)
- Större än eller lika med (>=)
- Mindre än (<)
- Mindre än eller lika med (<=)
Oftast används Excel-jämförelseoperatorer för siffror, datum och tidsvärden, till exempel:
=A1>20 | Återger TRUE om ett tal i cell A1 är större än 20, annars FALSE. |
=A1>=(B1/2) | Återger TRUE om ett tal i cell A1 är större än eller lika med kvoten av divisionen av B1 med 2, annars FALSE. |
=A1 Återger TRUE om datumet i cell A1 är mindre än 1-dec-2014, annars FALSE. | |
=A1<=SUMMA(B1:D1) | Återger TRUE om ett tal i cell A1 är mindre än eller lika med summan av värdena i cellerna B1:D1, annars FALSE. |
Använda Excel-jämförelseoperatörer med textvärden
I teorin kan du också använda är större än , är större än eller lika med operatörer samt deras mindre än motsvarigheter med textvärden. Till exempel, om cell A1 innehåller " äpplen " och B1 innehåller " bananer ", gissa vad formeln =A1>B1
Grattis till dem som har satsat på FALSE : )
När textvärden jämförs ignorerar Microsoft Excel deras stor- och småbokstäver och jämför värdena symbol för symbol, där "a" anses vara det lägsta textvärdet och "z" det högsta textvärdet.
När man jämför värdena för " äpplen " (A1) och " bananer " (B1), Excel börjar med deras första bokstäver "a" respektive "b", och eftersom "b" är större än "a", är formeln =A1>B1
återger FALSE.
Om de första bokstäverna är identiska jämförs de andra bokstäverna, om de också är identiska går Excel vidare till de tredje och fjärde bokstäverna och så vidare. Till exempel, om A1 innehåller " äpplen " och B1 innehöll " agave ", formeln =A1>B1
skulle ge TRUE eftersom "p" är större än "g".
Vid första anblicken verkar användningen av jämförelseoperatorer med textvärden inte ha någon praktisk betydelse, men man vet aldrig vad man kan behöva i framtiden, så förmodligen kan den här kunskapen vara till nytta för någon.
Vanliga användningsområden för logiska operatörer i Excel
I det verkliga arbetet används logiska Excel-operatorer sällan ensamma. De booleska värdena TRUE och FALSE som de returnerar är visserligen mycket sanna (ursäkta ordvitsen), men de är inte särskilt meningsfulla. För att få mer meningsfulla resultat kan du använda logiska operatörer som en del av Excel-funktioner eller regler för villkorlig formatering, vilket visas i nedanstående exempel.
1. Användning av logiska operatörer i argument för Excel-funktioner
När det gäller logiska operatörer är Excel mycket tillåtande och tillåter att de används i parametrar för många funktioner. En av de vanligaste användningarna finns i Excel IF-funktionen där jämförelseoperatörerna kan hjälpa till att konstruera ett logiskt test, och IF-formeln returnerar ett lämpligt resultat beroende på om testet utvärderas till TRUE eller FALSE. Till exempel:
=IF(A1>=B1, "OK", "Inte OK")
Den här enkla IF-formeln returnerar OK om ett värde i cell A1 är större än eller lika med ett värde i cell B1, annars "Inte OK".
Och här är ett annat exempel:
=IF(A1B1, SUM(A1:C1), "")
Formeln jämför värdena i cellerna A1 och B1, och om A1 inte är lika med B1 returneras summan av värdena i cellerna A1:C1, annars en tom sträng.
Excel logiska operatörer används också ofta i speciella IF-funktioner som SUMIF, COUNTIF, AVERAGEIF och deras plural motsvarigheter som returnerar ett resultat baserat på ett visst villkor eller flera villkor.
Du hittar en mängd exempel på formler i följande handledningar:
- Använda IF-funktionen i Excel
- Hur man använder SUMIF i Excel
- Excel SUMIFS och SUMIF med flera kriterier
- Använda COUNTIF i Excel
- Excel COUNTIFS och COUNTIF med flera kriterier
2. Användning av logiska Excel-operatörer i matematiska beräkningar.
Excel-funktioner är naturligtvis mycket kraftfulla, men du behöver inte alltid använda dem för att uppnå önskat resultat. Till exempel är de resultat som erhålls med följande två formler identiska:
IF-funktion: =IF(B2>C2, B2*10, B2*5)
Formel med logiska operatörer: =(B2>C2)*(B2*10)+(B2<=C2)*(B2*5)
IF-formeln är väl lättare att tolka, eller hur? Den säger åt Excel att multiplicera värdet i cell B2 med 10 om B2 är större än C2, annars multipliceras värdet i B1 med 5.
Låt oss nu analysera vad den andra formeln med den är större än och är mindre än eller lika med Det är bra att veta att Excel i matematiska beräkningar likställer det booleska värdet TRUE med 1 och FALSE med 0. Med detta i åtanke ska vi se vad varje logiskt uttryck faktiskt returnerar.
Om ett värde i cell B2 är större än ett värde i C2 är uttrycket B2>C2 sant och följaktligen lika med 1. Å andra sidan, B2C2, genomgår vår formel följande omvandling:
Eftersom alla tal som multipliceras med noll ger noll, kan vi kasta bort den andra delen av formeln efter plustecknet. Och eftersom alla tal som multipliceras med 1 ger det talet, blir vår komplexa formel till ett enkelt =B2*10 som ger produkten av att multiplicera B2 med 10, vilket är precis vad IF-formeln ovan gör : )
Om ett värde i cell B2 är mindre än i C2, så är uttrycket B2>C2 FALSK (0) och B2<=C2 VARA (1), vilket innebär att det omvända av det som beskrivs ovan kommer att inträffa.
3. Logiska operatörer i Excel villkorlig formatering
En annan vanlig användning av logiska operatörer finns i Excel Conditional Formatting som gör att du snabbt kan markera den viktigaste informationen i ett kalkylblad.
Följande enkla regler kan till exempel markera markerade celler eller hela rader i kalkylbladet beroende på ett värde i kolumn A:
Mindre än (orange): =A1<5
Större än (grönt): =A1>20
Detaljerade steg-för-steg-instruktioner och exempel på regler finns i följande artiklar:
- Formler för villkorlig formatering i Excel
- Så här ändrar du radfärgen baserat på en cells värde
- Två sätt att ändra bakgrundsfärg baserat på cellvärde
- Hur du markerar varannan rad i Excel
Som du ser är det intuitivt och enkelt att använda logiska operatörer i Excel. I nästa artikel kommer vi att lära oss allt om Excel logiska funktioner som gör det möjligt att göra mer än en jämförelse i en formel. Håll ögonen öppna och tack för att du läste!