Formule Excel: compter les lignes avec plusieurs critères OR -

Table des matières

Formule générique

=SUMPRODUCT(--((criteria1)+(criteria2)>0))

Sommaire

Pour compter les lignes à l'aide de plusieurs critères sur différentes colonnes - avec la logique OR - vous pouvez utiliser la fonction SOMMEPROD. Dans l'exemple illustré, la formule en H7 est:

=SUMPRODUCT(--((C5:C11="blue")+(D5:D11="dog")>0))

Explication

Dans l'exemple illustré, nous voulons compter les lignes dont la couleur est "bleu", OU l'animal est "chien".

La fonction SUMPRODUCT fonctionne avec les tableaux de manière native, donc pour les premiers critères, nous utilisons:

(C5:C11="blue")

Cela renvoie un tableau de valeurs TRUE FALSE comme ceci:

(VRAI; FAUX; FAUX; VRAI; FAUX; FAUX; VRAI)

Pour le deuxième critère, nous utilisons:

(D5:D11="dog")

Qui retourne:

(TRUE; FALSE; TRUE; FALSE; TRUE; FALSE; FALSE)

Ces deux tableaux sont ensuite joints avec l'addition (+), qui contraint automatiquement les valeurs TRUE FALSE à 1 et 0 pour créer un tableau comme celui-ci:

(2; 0; 1; 1; 1; 0; 1)

Nous ne pouvons pas simplement additionner ces valeurs avec SUMPRODUCT car cela doublerait le nombre de lignes avec à la fois "bleu" et "chien". Donc, nous utilisons "> 0" avec le double négatif (-) pour forcer toutes les valeurs à 1 ou à zéro:

--((2;0;1;1;1;0;1)>0)

Qui présente ce tableau à SUMPRODUCT:

(1; 0; 1; 1; 1; 0; 1)

SUMPRODUCT renvoie ensuite la somme de tous les éléments.

Autres tests logiques

L'exemple montre des tests d'égalité simple, mais vous pouvez remplacer ces instructions par d'autres tests logiques si nécessaire. Par exemple, pour compter les lignes où les cellules de la colonne A contiennent "rouge" OU les cellules de la colonne B contiennent "bleu", vous pouvez utiliser une formule comme celle-ci:

=SUMPRODUCT(--(ISNUMBER(SEARCH("red",A1:A10))+ISNUMBER(SEARCH("blue",B1:B10))>0))

Voir plus d'informations sur ISNUMBER avec SEARCH ici.

Des tests plus logiques

Vous pouvez également ajouter plus de deux tests dans la fonction SOMMEPROD.

Articles intéressants...