
Generieke formule
=SUMPRODUCT(ISNUMBER(MATCH(rng1,("A","B"),0))*ISNUMBER(MATCH(rng2,("X","Y","Z"),0)))
Samenvatting
Om overeenkomende rijen met meerdere OF-criteria te tellen, kunt u een formule gebruiken die is gebaseerd op de functie SOMPRODUCT. In het getoonde voorbeeld is de formule in F10:
=SUMPRODUCT(ISNUMBER(MATCH(B5:B11,("A","B"),0))* ISNUMBER(MATCH(C5:C11,("X","Y","Z"),0)))
Deze formule retourneert een aantal rijen waarbij kolom één A of B is en kolom twee X, Y of Z.
Uitleg
Werkend van binnen naar buiten, wordt elk criterium toegepast met een aparte ISNUMBER + MATCH constructie. Om een telling van rijen in kolom één te genereren waarbij de waarde A of B is, gebruiken we:
ISNUMBER(MATCH(B5:B11,("A","B"),0)
MATCH genereert een resultaatarray die er als volgt uitziet:
(1;2;#N/A;1;2;1;2)
en ISNUMBER converteert deze array naar deze array:
(TRUE;TRUE;FALSE;TRUE;TRUE;TRUE;TRUE)
Om een telling van rijen in kolom twee te genereren waarbij de waarde X, Y of Z is, gebruiken we:
ISNUMBER(MATCH(C5:C11,("X","Y","Z"),0))
Dan geeft MATCH terug:
(1;2;3;3;#N/A;1;2)
en ISNUMBER converteert naar:
(TRUE;TRUE;TRUE;TRUE;FALSE;TRUE;TRUE)
Deze twee arrays worden met elkaar vermenigvuldigd in SOMPRODUCT, dat automatisch TRUE FALSE-waarden omzet in 1 en 0 als onderdeel van de wiskundige bewerking.
Dus, om te visualiseren, wordt het eindresultaat als volgt afgeleid:
=SUMPRODUCT((1;1;0;1;1;1;1)*(1;1;1;1;0;1;1)) =SUMPRODUCT((1;1;0;1;0;1;1)) =5
Met celverwijzingen
In het bovenstaande voorbeeld worden hardgecodeerde arrayconstanten gebruikt, maar u kunt ook celverwijzingen gebruiken:
=SUMPRODUCT(ISNUMBER(MATCH(B5:B11,E5:E6,0))*ISNUMBER(MATCH(C5:C11,F5:F7,0)))
Meer criteria
Deze benadering kan worden "opgeschaald" om meer criteria te behandelen. U kunt een voorbeeld zien in deze formule-uitdaging.