EXCEL : calculs conditionnels multicritères

EXCEL offre un panel de fonctions évoluées très étendu ; parmi celles-ci figurent les fonctions de calcul conditionnel.

Les calculs conditionnels permettent d’effectuer des calculs en cas de réalisation d’une ou plusieurs conditions.

Calculs conditionnels multicritères sous EXCEL : SOMME.SI.ENS et NB.SI.ENS

Calculs conditionnels multicritères sous EXCEL : SOMME.SI.ENS et NB.SI.ENS

Pour commencer : les calculs monocritères…

Les fonctions SOMME.SI et NB.SI assurent les calculs conditionnels monocritères. Ces deux fonctions calculent respectivement la somme et le nombre d’occurrences d’une plage selon un seul critère :

  • SOMME.SI(plagecondition;condition;plage)
    • exemple : =SOMME.SI(C4:C11;”>0,15″;B4:B11) additionne le contenu de toutes les cellules comprises dans la plage B4:B11 pour lesquelles le contenu des cellules de la plage C4:C11 est supérieur à 15%, soit 68 000 €.
  • NB.SI(plage;condition)
    • exemple : =NB.SI(C4:C11;”>0,15″) compte le nombre de cellules de la plage C4:C11 dont le contenu est supérieur à 15%, soit 3 occurrences.

L’équivalent VBA de ces deux fonctions est :

  • sumif(plagecondition,condition,plage) et
  • countif(plage,condition).

Ces deux fonctions s’utilisent de la même manière que les fonctions Excel.

Vous aurez observé que les fonctions SOMME.SI et NB.SI et leurs équivalents VBA n’acceptent qu’un seul critère.

Et pour finir : les calculs multicritères

Depuis EXCEL 2007, deux nouvelles fonctions acceptant plus d’un critère ont été implémentées :

  • SOMME.SI.ENS(plage;plagecondition1;condition1;plagecondition2; condition2;…)
    • exemple : =SOMME.SI.ENS(B4:B11;C4:C11;”>0,15″;B4:B11;”<22000″) additionne le contenu de toutes les cellules comprises dans la plage B4:B11 pour lesquelles le contenu des cellules de la plage C4:C11 est supérieur à 15% et pour lesquelles le contenu des cellules de la plage B4:B11 est inférieur à 22 000 €, soit 21 000 €.
  • NB.SI.ENS(plage1;condition1;plage2;condition2;…)
    • exemple : =NB.SI.ENS(C4:C11;”>0,15″;B4:B11;”<22000″) compte le nombre de cellules de la plage C4:C11 dont le contenu est supérieur à 15% et dont le contenu de la plage B4:B11 est inférieur à 22 000 €, soit 1 occurrence.

Ces fonctions acceptent autant de critères que de besoin, même un seul (dans ce cas, les fonctions SOMME.SI.ENS et NB.SI.ENS équivalent à SOMME.SI et NB.SI).

Les fonctions SOMME.SI.ENS et NB.SI.ENS. fonctionnent de la même manière que SOMME.SI et NB.SI. Toutefois, pour la fonction SOMME.SI.ENS, les plages à additionner et les plages de critères sont inversées par rapport à SOMME.SI.

L’équivalent VBA de ces deux fonctions est :

  • sumifs(plage,plagecondition1,condition1,plagecondition2,condition2,..),
  • countifs(plage1,condition1,plage2,condition2…).

Ces deux fonctions s’utilisent de la même manière que les fonctions Excel.

Le classeur EXCEL reprenant les exemples cités dans cet articles est téléchargeable ci-après.

Approfondir le sujet : Programmer en VBA / Découvrir la série d’articles Maîtriser Excel

Share Button
Classeur EXCEL exemple des fonctions SOMME SI ENS & NB SI ENS
11 KiB
1355 téléchargements
Détails...
The following two tabs change content below.
Après seize années passées en cabinet d’expertise-comptable et de commissariat aux comptes (où j’ai exercé comme expert-comptable et chef de mission audit), j’ai pris le poste de directeur comptable d’un groupe de distribution automobile en novembre 2014. Au cours de ma carrière, j’ai acquis une expérience significative en audit et en exploitation des systèmes d’information (analyse de données, automatisation des tâches, programmation informatique) au service de la production des comptes annuels et consolidés. C’est cette expérience personnelle et ma passion pour l’informatique que je partage sur ce blog. Mon CV / Réalisations personnelles et projets informatiques / Ma collection / Me contacter

8 commentaires

  1. Bonjour , je vous remercie pour l’article ,

    l’Excel me donne erreur quand je mets la formule =SOMME.SI.ENS(B4:B11;C4:C11; »>0,15″;B4:B11; »<22000″) il ne reconnait pas les caractère flèches et si je les enlève il donne erreur aussi , svp de m'aider sur ce sujet vu que c'est exactement la formule dont je cherchais , et merci beaucoup d'avance

  2. après avoir vu le fichier excel , le problème est que dans mon fichier la valeur 0.15 est dans une cellule je veux dire elle est variable ou introduite manuellement dans une cellule A1 par exemple

  3. Bonjour,
    Pourriez-vous préciser ce que vous entendez par caractère flèches ? C’est ce signe-là : > ? Il s’agit du signe “plus grand que” que l’on obtient en le frappant sur le clavier, il est situé entre la touche Shift et le W.
    Cordialement,
    Benoît RIVIERE

  4. Je viens de comprendre le problème. Vous parlez du » ? C’est un problème avec mon blog. Ce signe correspond en fait aux guillemets que l’on obtient avec la touche 3 (“).
    J’espère que cela fonctionnera maintenant.
    Bien cordialement,
    Benoît RIVIERE

  5. Pingback: EXCEL : calculs conditionnels avec les fonctions MIN et MAX – Audit & Systèmes d'Information

  6. C’est interessant ce que vous avez partagé, moi je travail avec ce genre de formule depuis quelques années mais je voulais vraiment passer au vba par exemple nombre d’apparition d’un nom entre deux dates ou somme des montant se situant entre deux dates avec les formules somme.si.ens et nb.si.ens en vba. Je sais les faire en macro automatique mais je voulais un vba avancé. Merci pour la compréhension.

  7. Pingback: RECHERCHEX, la nouvelle fonction de recherche de données d'Excel qui ringardise RECHERCHEV - Audit & Systèmes d'Information

  8. Pingback: Excel : effectuer des calculs conditionnels en fonction de la couleur des cellules - Audit & Systèmes d'Information

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.