![](https://cdn.wiki-base.com/4300983/excel_formula_sumproduct_count_multiple_or_criteria__2.png.webp)
Formule générique
=SUMPRODUCT(ISNUMBER(MATCH(rng1,("A","B"),0))*ISNUMBER(MATCH(rng2,("X","Y","Z"),0)))
Sommaire
Pour compter les lignes correspondantes avec plusieurs critères OR, vous pouvez utiliser une formule basée sur la fonction SUMPRODUCT. Dans l'exemple illustré, la formule en F10 est:
=SUMPRODUCT(ISNUMBER(MATCH(B5:B11,("A","B"),0))* ISNUMBER(MATCH(C5:C11,("X","Y","Z"),0)))
Cette formule renvoie un nombre de lignes où la colonne 1 est A ou B et la colonne 2 est X, Y ou Z.
Explication
En travaillant de l'intérieur vers l'extérieur, chaque critère est appliqué avec une construction ISNUMBER + MATCH distincte. Pour générer un nombre de lignes dans la première colonne où la valeur est A ou B, nous utilisons:
ISNUMBER(MATCH(B5:B11,("A","B"),0)
MATCH génère un tableau de résultats qui ressemble à ceci:
(1;2;#N/A;1;2;1;2)
et ISNUMBER convertit ce tableau en ce tableau:
(TRUE;TRUE;FALSE;TRUE;TRUE;TRUE;TRUE)
Pour générer un nombre de lignes dans la colonne deux où la valeur est X, Y ou Z, nous utilisons:
ISNUMBER(MATCH(C5:C11,("X","Y","Z"),0))
Puis MATCH retourne:
(1;2;3;3;#N/A;1;2)
et ISNUMBER se convertit en:
(TRUE;TRUE;TRUE;TRUE;FALSE;TRUE;TRUE)
Ces deux tableaux sont multipliés ensemble dans SUMPRODUCT, qui convertit automatiquement les valeurs TRUE FALSE en 1 et 0 dans le cadre de l'opération mathématique.
Donc, pour visualiser, le résultat final est dérivé comme ceci:
=SUMPRODUCT((1;1;0;1;1;1;1)*(1;1;1;1;0;1;1)) =SUMPRODUCT((1;1;0;1;0;1;1)) =5
Avec des références de cellule
L'exemple ci-dessus utilise des constantes de tableau codées en dur, mais vous pouvez également utiliser des références de cellule:
=SUMPRODUCT(ISNUMBER(MATCH(B5:B11,E5:E6,0))*ISNUMBER(MATCH(C5:C11,F5:F7,0)))
Plus de critères
Cette approche peut être «mise à l'échelle» pour traiter plus de critères. Vous pouvez voir un exemple dans ce défi de formule.