Logische functies in Excel: AND, OR, XOR en NOT

  • Deel Dit
Michael Brown

De tutorial legt de essentie uit van de logische functies AND, OR, XOR en NOT in Excel en geeft formulevoorbeelden die hun veelvoorkomende en inventieve gebruik demonstreren.

Vorige week hebben we inzicht gekregen in de logische operatoren van Excel die worden gebruikt om gegevens in verschillende cellen te vergelijken. Vandaag zult u zien hoe u het gebruik van logische operatoren kunt uitbreiden en uitgebreidere tests kunt maken om complexere berekeningen uit te voeren. Logische functies van Excel zoals AND, OR, XOR en NOT zullen u daarbij helpen.

    Excel logische functies - overzicht

    Microsoft Excel biedt 4 logische functies om met de logische waarden te werken. De functies zijn AND, OR, XOR en NOT. U gebruikt deze functies wanneer u meer dan één vergelijking in uw formule wilt uitvoeren of meerdere voorwaarden wilt testen in plaats van slechts één. Naast logische operatoren geven de logische functies van Excel ook TRUE of FALSE terug wanneer hun argumenten worden geëvalueerd.

    De volgende tabel geeft een korte samenvatting van wat elke logische functie doet om u te helpen de juiste formule te kiezen voor een specifieke taak.

    Functie Beschrijving Formule Voorbeeld Formule Beschrijving
    EN Geeft WAAR als alle argumenten WAAR zijn. =AND(A2>=10, B2<5) De formule geeft WAAR als een waarde in cel A2 groter of gelijk is aan 10, en een waarde in B2 kleiner is dan 5, en anders ONWAAR.
    OF Geeft WAAR als een van de argumenten WAAR is. =OR(A2>=10, B2<5) De formule geeft WAAR als A2 groter of gelijk is aan 10 of B2 kleiner is dan 5, of als aan beide voorwaarden is voldaan. Als aan geen van beide voorwaarden is voldaan, geeft de formule ONWAAR terug.
    XOR Geeft een logische Exclusive Or van alle argumenten. =XOR(A2>=10, B2<5) De formule geeft WAAR als A2 groter of gelijk is aan 10 of B2 kleiner is dan 5. Als aan geen van beide voorwaarden is voldaan of als aan beide voorwaarden is voldaan, geeft de formule ONWAAR terug.
    NIET Geeft de omgekeerde logische waarde van het argument terug, d.w.z. als het argument FALSE is, wordt TRUE teruggegeven en omgekeerd. =NOT(A2>=10) De formule geeft FALSE als een waarde in cel A1 groter of gelijk is aan 10; anders TRUE.

    Naast de vier hierboven beschreven logische functies biedt Microsoft Excel drie "voorwaardelijke" functies - IF, IFERROR en IFNA.

    Excel logische functies - feiten en cijfers

    1. In de argumenten van de logische functies kunt u celverwijzingen, numerieke en tekstwaarden, Booleaanse waarden, vergelijkingsoperatoren en andere Excel-functies gebruiken. Alle argumenten moeten echter uitkomen op de Booleaanse waarden TRUE of FALSE, of verwijzingen of arrays die logische waarden bevatten.
    2. Als een argument van een logische functie een lege cellen Als alle argumenten lege cellen zijn, geeft de formule de foutmelding #VALUE!
    3. Indien een argument van een logische functie getallen bevat, dan wordt nul gewaardeerd als FALSE, en alle andere getallen, inclusief negatieve getallen, als TRUE. Bijvoorbeeld, indien de cellen A1:A5 getallen bevatten, zal de formule =AND(A1:A5) TRUE opleveren indien geen van de cellen 0 bevat, en anders FALSE.
    4. Een logische functie geeft de foutmelding #VALUE! indien geen van de argumenten een logische waarde oplevert.
    5. Een logische functie geeft de foutmelding #NAME? als u de naam van de functie verkeerd hebt gespeld of als u hebt geprobeerd de functie te gebruiken in een eerdere Excel-versie die de functie niet ondersteunt. De XOR-functie kan bijvoorbeeld alleen worden gebruikt in Excel 2016 en 2013.
    6. In Excel 2007 en hoger kunt u maximaal 255 argumenten opnemen in een logische functie, mits de totale lengte van de formule niet langer is dan 8.192 tekens. In Excel 2003 en lager kunt u maximaal 30 argumenten opgeven en mag de totale lengte van uw formule niet langer zijn dan 1.024 tekens.

    De functie AND gebruiken in Excel

    De AND-functie is het meest populaire lid van de familie van logische functies. Hij komt van pas wanneer u verschillende voorwaarden moet testen en ervoor moet zorgen dat aan alle voorwaarden wordt voldaan. Technisch gezien test de AND-functie de voorwaarden die u opgeeft en geeft WAAR als alle voorwaarden WAAR zijn, anders ONWAAR.

    De syntaxis voor de Excel EN-functie is als volgt:

    AND(logical1, [logical2], ...)

    Waarbij logisch de voorwaarde is die u wilt testen en die kan evalueren naar TRUE of FALSE. De eerste voorwaarde (logical1) is vereist, de volgende voorwaarden zijn optioneel.

    Laten we nu eens kijken naar enkele formulevoorbeelden die laten zien hoe u de EN-functies in Excel-formules kunt gebruiken.

    Formule Beschrijving
    =AND(A2="Bananen", B2>C2) Geeft WAAR als A2 "Bananen" bevat en B2 groter is dan C2, anders ONWAAR.
    =AND(B2>20, B2=C2) Geeft WAAR als B2 groter is dan 20 en B2 gelijk is aan C2, anders ONWAAR.
    =AND(A2="Bananen", B2>=30, B2>C2) Geeft WAAR als A2 "Bananen" bevat, B2 groter is dan of gelijk is aan 30 en B2 groter is dan C2, anders ONWAAR.

    Excel EN-functie - veelvoorkomende toepassingen

    Op zichzelf is de functie AND in Excel niet erg spannend en weinig bruikbaar, maar in combinatie met andere Excel-functies kan AND de mogelijkheden van uw werkbladen aanzienlijk uitbreiden.

    Een van de meest voorkomende toepassingen van de Excel AND-functie is te vinden in het logical_test argument van de IF-functie om meerdere voorwaarden te testen in plaats van slechts één. U kunt bijvoorbeeld elk van de bovenstaande AND-functies nestelen in de IF-functie en een resultaat krijgen dat hierop lijkt:

    =IF(AND(A2="Bananen", B2>C2), "Goed", "Slecht")

    Bekijk voor meer IF / AND formule voorbeelden zijn tutorial: Excel IF functie met meerdere AND voorwaarden.

    Een Excel-formule voor de voorwaarde TUSSEN

    Wanneer u in Excel een tussenformule moet maken die alle waarden tussen de gegeven twee waarden kiest, is een gebruikelijke aanpak het gebruik van de IF-functie met AND in de logische toets.

    U hebt bijvoorbeeld 3 waarden in de kolommen A, B en C en u wilt weten of een waarde in kolom A tussen de waarden van B en C valt. Om zo'n formule te maken, is alleen de IF-functie met geneste AND en een paar vergelijkingsoperatoren nodig:

    Formule om te controleren of X tussen Y en Z ligt:

    =IF(AND(A2>=B2,A2<=C2),"Yes", "No")

    Formule om te controleren of X tussen Y en Z ligt, niet inclusief:

    =IF(AND(A2>B2, A2

    Zoals de bovenstaande schermafbeelding laat zien, werkt de formule perfect voor alle soorten gegevens - getallen, datums en tekstwaarden. Bij het vergelijken van tekstwaarden controleert de formule ze teken voor teken in alfabetische volgorde. Zo staat er bijvoorbeeld dat Appels in niet tussen Abrikoos en Bananen omdat de tweede "p" in Appels komt voor "r" in Abrikoos Zie Vergelijkingsoperatoren in Excel gebruiken met tekstwaarden voor meer details.

    Zoals u ziet is de formule IF /AND eenvoudig, snel en bijna universeel. Ik zeg "bijna" omdat hij niet één scenario dekt. De bovenstaande formule impliceert dat een waarde in kolom B kleiner is dan in kolom C, d.w.z. kolom B bevat altijd de ondergrenswaarde en C - de bovengrenswaarde. Dit is de reden waarom de formule " Geen " voor rij 6, waar A6 12, B6 - 15 en C6 - 3 is, alsook voor rij 8, waar A8 24-nov, B8 26-dec en C8 21-okt is.

    Maar wat als u wilt dat uw tussenformule correct werkt, ongeacht waar de onder- en bovengrens zich bevinden? Gebruik in dat geval de Excel MEDIAN functie die de mediaan van de gegeven getallen weergeeft (d.w.z. het getal in het midden van een reeks getallen).

    Dus, als u AND in de logische test van de IF-functie vervangt door MEDIAAN, gaat de formule als volgt:

    =IF(A2=MEDIAAN(A2:C2),"Ja","Nee")

    En je krijgt de volgende resultaten:

    Zoals u ziet, werkt de functie MEDIAAN perfect voor getallen en datums, maar geeft de foutmelding #NUM! voor tekstwaarden. Helaas, niemand is perfect : )

    Als u een perfecte Between formule wilt die zowel voor tekstwaarden als voor getallen en data werkt, dan zult u een meer complexe logische tekst moeten construeren met behulp van de AND / OR functies, zoals deze:

    =IF(OR(AND(A2>B2, A2

    De OR-functie in Excel gebruiken

    Naast AND is de OR-functie in Excel een logische basisfunctie die wordt gebruikt om twee waarden of beweringen te vergelijken. Het verschil is dat de OR-functie WAAR is als ten minste één van de argumenten WAAR is, en ONWAAR als alle argumenten ONWAAR zijn. De OR-functie is beschikbaar in alle versies van Excel 2016 - 2000.

    De syntaxis van de OR-functie in Excel lijkt sterk op die van AND:

    OR(logical1, [logical2], ...)

    De eerste logica is verplicht, aanvullende voorwaarden (tot 255 in moderne Excel versies) zijn optioneel.

    Laten we nu een paar formules opschrijven om een idee te krijgen hoe de OR-functie in Excel werkt.

    Formule Beschrijving
    =OR(A2="Bananas", A2="Oranges") Geeft WAAR als A2 "Bananen" of "Sinaasappels" bevat, anders ONWAAR.
    =OR(B2>=40, C2>=20) Geeft WAAR als B2 groter is dan of gelijk aan 40 of C2 groter is dan of gelijk aan 20, anders ONWAAR.
    =OR(B2=" ",) Geeft WAAR als B2 of C2 leeg is of beide, anders ONWAAR.

    Naast de EN-functie van Excel wordt OR veel gebruikt om het nut van andere Excel-functies die logische tests uitvoeren, zoals de IF-functie, uit te breiden. Hier volgen enkele voorbeelden:

    IF-functie met geneste OR

    =IF(OR(B2>30, C2>20), "Goed", "Slecht")

    De formule geeft " Goed " indien een getal in cel B3 groter is dan 30 of het getal in C2 groter is dan 20, " Slecht "anders.

    Excel AND / OR functies in één formule

    Uiteraard belet niets u om beide functies, AND & OR, in een enkele formule te gebruiken indien uw bedrijfslogica dit vereist. Er kunnen oneindig veel variaties van dergelijke formules bestaan die neerkomen op de volgende basispatronen:

    =AND(OR(Cond1, Cond2), Cond3)

    =AND(OR(Cond1, Cond2), OR(Cond3, Cond4)

    =OR(AND(Cond1, Cond2), Cond3)

    =OR(AND(Cond1,Cond2), AND(Cond3,Cond4))

    Als u bijvoorbeeld wilt weten welke partijen bananen en sinaasappelen zijn uitverkocht, d.w.z. dat het aantal "In voorraad" (kolom B) gelijk is aan het aantal "Verkocht" (kolom C), kan de volgende OR/AND-formule u dat snel laten zien:

    =OR(AND(A2="bananen", B2=C2), AND(A2="sinaasappels", B2=C2))

    OF-functie in Excel voorwaardelijke opmaak

    =OR($B2="", $C2="")

    De regel met de bovenstaande OR-formule markeert rijen met een lege cel in kolom B of C, of in beide.

    Meer informatie over formules voor voorwaardelijke opmaak vindt u in de volgende artikelen:

    • Excel voorwaardelijke opmaak formules
    • De kleur van de rij wijzigen op basis van de waarde van een cel
    • De kleur van een cel veranderen op basis van een andere celwaarde
    • Hoe elke andere rij in Excel te markeren

    De XOR-functie gebruiken in Excel

    In Excel 2013 introduceerde Microsoft de XOR-functie, die een logische Exclusief OF Deze term is zeker bekend bij degenen onder u die enige kennis hebben van een programmeertaal of computerwetenschap in het algemeen. Voor degenen die dat niet hebben, kan het concept van "Exclusive Or" in het begin wat moeilijk te begrijpen zijn, maar hopelijk zal de onderstaande uitleg, geïllustreerd met formulevoorbeelden, helpen.

    De syntaxis van de XOR-functie is identiek aan die van OR:

    XOR(logical1, [logical2],...)

    De eerste logische verklaring (Logische 1) is vereist, aanvullende logische waarden zijn optioneel. U kunt maximaal 254 voorwaarden in één formule testen, en dit kunnen logische waarden, matrices of verwijzingen zijn die resulteren in TRUE of FALSE.

    In de eenvoudigste versie bevat een XOR-formule slechts 2 logische beweringen en returns:

    • TRUE als een van beide argumenten op TRUE uitkomt.
    • FALSE indien beide argumenten WAAR zijn of geen van beide WAAR is.

    Dit is misschien gemakkelijker te begrijpen aan de hand van de formulevoorbeelden:

    Formule Resultaat Beschrijving
    =XOR(1>0, 2<1) WARE Geeft WAAR omdat het eerste argument WAAR is en het tweede argument ONWAAR.
    =XOR(1<0, 2<1) FALSE Geeft FALSE omdat beide argumenten FALSE zijn.
    =XOR(1>0, 2>1) FALSE Geeft FALSE terug omdat beide argumenten TRUE zijn.

    Wanneer meer logische verklaringen worden toegevoegd, resulteert de XOR-functie in Excel in:

    • WAAR indien een oneven aantal argumenten WAAR is;
    • FALSE als het totale aantal TRUE statements even groot is, of als alle statements FALSE zijn.

    Het onderstaande screenshot illustreert het punt:

    Als u niet zeker weet hoe de Excel XOR-functie kan worden toegepast op een reëel scenario, overweeg dan het volgende voorbeeld. Stel u hebt een tabel met deelnemers en hun resultaten voor de eerste 2 wedstrijden. U wilt weten wie van de betalers de 3e wedstrijd moet spelen op basis van de volgende voorwaarden:

    • Deelnemers die Spel 1 en Spel 2 hebben gewonnen gaan automatisch door naar de volgende ronde en hoeven Spel 3 niet te spelen.
    • Deelnemers die beide eerste wedstrijden hebben verloren, worden uitgeschakeld en spelen ook wedstrijd 3 niet.
    • De deelnemers die spel 1 of spel 2 hebben gewonnen, spelen spel 3 om te bepalen wie naar de volgende ronde gaat en wie niet.

    Een eenvoudige XOR-formule werkt precies zoals we willen:

    =XOR(B2="Won", C2="Won")

    En als je deze XOR-functie nestelt in de logische test van de IF-formule, krijg je nog zinvollere resultaten:

    =IF(XOR(B2="Gewonnen", C2="Gewonnen"), "Ja", "Nee")

    De functie NIET gebruiken in Excel

    De NOT-functie is een van de eenvoudigste Excel-functies qua syntaxis:

    NOT(logical)

    U gebruikt de NOT-functie in Excel om een waarde van het argument om te keren. Met andere woorden, als logisch evalueert naar FALSE, retourneert de NOT-functie TRUE en vice versa. Bijvoorbeeld, beide onderstaande formules retourneren FALSE:

    =NOT(TRUE)

    =NOT(2*2=4)

    Waarom zou je zulke belachelijke resultaten willen krijgen? In sommige gevallen ben je misschien meer geïnteresseerd om te weten wanneer aan een bepaalde voorwaarde niet is voldaan dan wanneer dat wel het geval is. Bijvoorbeeld, wanneer je een lijst met kleding bekijkt, wil je misschien een kleur uitsluiten die niet bij je past. Ik hou niet zo van zwart, dus ga ik verder met deze formule:

    =NOT(C2="black")

    Zoals gebruikelijk is er in Microsoft Excel meer dan één manier om iets te doen, en u kunt hetzelfde resultaat bereiken door de operator Niet gelijk aan te gebruiken: =C2"zwart".

    Als u meerdere voorwaarden in een enkele formule wilt testen, kunt u NOT gebruiken in combinatie met de EN- of OF-functie. Als u bijvoorbeeld zwarte en witte kleuren wilt uitsluiten, zou de formule als volgt gaan:

    =NOT(OR(C2="black", C2="white"))

    En als u liever geen zwarte jas heeft, terwijl een zwarte jas of een bontjas op de rug kan worden overwogen, moet u NIET gebruiken in combinatie met de functie EN van Excel:

    =NOT(AND(C2="black", B2="coat"))

    Een ander algemeen gebruik van de NOT-functie in Excel is om het gedrag van een andere functie om te keren. U kunt bijvoorbeeld de NOT- en ISBLANK-functies combineren om de ISNOTBLANK-formule te maken die Microsoft Excel niet heeft.

    Zoals u weet, geeft de formule =ISBLANK(A2) WAAR als de cel A2 leeg is. De NOT-functie kan dit resultaat omkeren naar FALSE: =NOT(ISBLANK(A2))

    En dan kunt u nog een stap verder gaan en een geneste IF-instructie maken met de functies NOT / ISBLANK voor een echte taak:

    =IF(NOT(ISBLANK(C2)), C2*0.15, "Geen bonus :(")

    Vertaald in gewoon Engels vertelt de formule Excel het volgende: indien cel C2 niet leeg is, vermenigvuldig dan het getal in C2 met 0,15, wat de bonus van 15% geeft aan elke verkoper die extra verkopen heeft gedaan. Indien C2 leeg is, verschijnt de tekst "Geen bonus :(".

    In wezen is dit hoe u de logische functies in Excel gebruikt. Natuurlijk hebben deze voorbeelden slechts een tipje van de sluier opgelicht van de mogelijkheden van AND, OR, XOR en NOT. Nu u de basis kent, kunt u uw kennis uitbreiden door uw echte taken aan te pakken en slimme uitgebreide formules te schrijven voor uw werkbladen.

    Michael Brown is een toegewijde technologieliefhebber met een passie voor het vereenvoudigen van complexe processen met behulp van softwaretools. Met meer dan tien jaar ervaring in de technische industrie heeft hij zijn vaardigheden in Microsoft Excel en Outlook, evenals Google Spreadsheets en Documenten aangescherpt. Michael's blog is gewijd aan het delen van zijn kennis en expertise met anderen, met eenvoudig te volgen tips en tutorials voor het verbeteren van de productiviteit en efficiëntie. Of je nu een doorgewinterde professional of een beginner bent, Michaels blog biedt waardevolle inzichten en praktisch advies om het meeste uit deze essentiële softwaretools te halen.