Utilisation d’un ET ou OU logique dans une instruction SOMME+SI dans Excel

Résumé

Dans Microsoft Excel, l’utilisation de fonctions logiques ET et/ou OU dans une instruction SOMME+SI pour tester une plage pour plusieurs conditions peut ne pas fonctionner comme prévu. Une instruction SI imbriquée fournit cette fonctionnalité. Toutefois, cet article traite d’une deuxième méthode plus facile qui utilise les formules suivantes.

Pour les conditions ET

=SUM(IF(Test1*Test2*...*Testn))

Pour les conditions OU

=SUM(IF(Test1+Test2+...+Testn))

Informations supplémentaires

Utilisez une instruction SOMME+SI pour compter le nombre de cellules réussissant un test donné dans une plage, ou pour additionner ces valeurs dans une plage dont les valeurs correspondantes répondent aux critères spécifiés dans une autre (ou la même) plage. Le comportement est similaire à celui de la fonction BDSOMME dans Microsoft Excel.

Exemple

Cet exemple compte le nombre de valeurs de la plage A1:A10 comprises entre 1 et 10 inclus.

Pour ce faire, vous pouvez utiliser l’instruction SI imbriquée suivante :

=SUM(IF(A1:A10>=1,IF(A1:A10<=10,1,0)))

La méthode suivante fonctionne également et offre une lecture beaucoup plus facile si vous effectuez plusieurs tests :

=SUM(IF((A1:A10>=1)*(A1:A10<=10),1,0))

La méthode suivante compte le nombre de dates comprises entre deux dates données :

=SUM(IF((A1:A10>=DATEVALUE("1/10/99"))*(A1:A10<=DATEVALUE("2/10/99")),1,0))

Remarque

  • Vous devez entrer ces formules sous forme de formules de tableau en appuyant simultanément sur Ctrl+Maj+Entrée. Sur Macintosh, appuyez sur Cmd+Retour à la place.
  • Les tableaux ne peuvent pas faire référence à des colonnes entières.

Avec cette méthode, vous multipliez les résultats d’un test logique par un autre test logique pour renvoyer les valeurs TRUE et FALSE à la fonction SOMME. Vous pouvez les assimiler à :

TRUE*TRUE=1
TRUE*FALSE=0
FALSE*TRUE=0
FALSE*FALSE=0

La méthode indiquée ci-dessus compte le nombre de cellules de la plage A1:A10 pour lesquelles les deux tests donnent la valeur TRUE. Pour additionner les valeurs dans les cellules correspondantes (par exemple, B1:B10), modifiez la formule comme indiqué ci-dessous :

=SUM(IF((A1:A10>=1)*(A1:A10<=10),B1:B10,0))

Vous pouvez implémenter un OU dans une instruction SOMME+SI de manière similaire. Pour ce faire, modifiez la formule indiquée ci-dessus en remplaçant le signe de multiplication (*) par un signe plus (+). Cela donne la formule générique suivante :

=SUM(IF((Test1)+(Test2)+...+(Testn),1,0))

References

Pour plus d’informations sur le calcul d’une valeur en fonction d’une condition, cliquez sur Aide de Microsoft Excel dans le menu Aide, tapez calcul d’une valeur en fonction d’une condition dans le Compagnon Office ou l’Aide intuitive, puis cliquez sur Rechercher pour afficher les rubriques correspondantes.