
Generieke formule
=FILTER(rng1,(rng2="red")+(rng2="blue"),"No results")
Samenvatting
Als u gegevens wilt filteren om alleen records op te nemen waarvan een waarde dit of dat is, kunt u de functie FILTER en eenvoudige booleaanse logische expressies gebruiken. In het getoonde voorbeeld is de formule in F5:
=FILTER(B5:D14,(D5:D14="red")+(D5:D14="blue"),"No results")
Het resultaat dat door FILTER wordt geretourneerd, bevat alleen rijen waarin de groep "rood" of "blauw" is.
Uitleg
Deze formule is afhankelijk van de FILTER-functie om gegevens op te halen op basis van een logische test die is gebouwd met eenvoudige uitdrukkingen en booleaanse logica:
(D5:D14="red")+(D5:D14="blue")
Nadat elke uitdrukking is geëvalueerd, hebben we de volgende arrays:
((TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE))+ ((FALSE;TRUE;FALSE;FALSE;TRUE;FALSE;FALSE;TRUE;FALSE;FALSE))
De wiskundige bewerking (optellen) dwingt TRUE en FALSE naar 1 en nul, en het resultaat is een enkele array:
=((1;0;0;0;0;0;1;0;0;0))+((0;1;0;0;1;0;0;1;0;0))
Omdat we Booleaanse algebra gebruiken, zijn er slechts twee mogelijke waardenoperaties: 1 of 0. De laatste array bevat dus alleen enen en nullen:
=(1;1;0;0;1;0;1;1;0;0)
Deze laatste array wordt aan de FILTER-functie geleverd als het "include" -argument, en FILTER retourneert alleen rijen die overeenkomen met een 1.