SOMME.SI, SOMME.SI.ENS ou SOMMEPROD : quelle formule choisir ?

Sommer des valeurs selon une ou plusieurs conditions est l'un des besoins les plus fréquents dans Excel. Trois formules répondent à ce besoin : SOMME.SI pour une condition, SOMME.SI.ENS pour plusieurs conditions directes, et SOMMEPROD pour les cas complexes où les deux précédentes montrent leurs limites.

Vue d'ensemble

SOMME.SI

1 critère, syntaxe intuitive

Somme si une colonne remplit un critère

=SOMME.SI(plage_critère; critère; plage_somme)

Disponible depuis toutes les versions. Très rapide.

SOMME.SI.ENS

2 à 127 critères

Somme si plusieurs colonnes remplissent chacune un critère

=SOMME.SI.ENS(plage_somme; plage1; crit1; plage2; crit2; ...)

Disponible depuis Excel 2007. Rapide et lisible.

SOMMEPROD

Conditions calculées ou complexes

Multiplie et somme des tableaux ; peut simuler n'importe quel critère

=SOMMEPROD((cond1)*(cond2)*plage_somme)

Disponible depuis toutes les versions. Très puissant mais plus lent sur grands tableaux.

SOMME.SI — le classique efficace

SOMME.SI additionne les cellules d'une plage pour lesquelles la colonne de critère correspond à la valeur spécifiée. Son ordre des arguments est différent de SOMME.SI.ENS (attention lors de la migration).

— Total des ventes pour "Paris" :
=SOMME.SI(A2:A100;"Paris";C2:C100)

— Total des ventes supérieures à 1000 € :
=SOMME.SI(C2:C100;">1000";C2:C100)

— Total des ventes dont le code commence par "PRD" :
=SOMME.SI(B2:B100;"PRD*";C2:C100)    ← les jokers * et ? sont acceptés
Jokers dans SOMME.SI : * remplace n'importe quel nombre de caractères, ? remplace un seul caractère. Cette syntaxe fonctionne aussi dans SOMME.SI.ENS.

SOMME.SI.ENS — plusieurs conditions simultanées

SOMME.SI.ENS évalue plusieurs critères : tous doivent être vrais (logique ET). La plage à sommer est le premier argument (contrairement à SOMME.SI).

— Ventes de "Paris" ET supérieures à 1000 € :
=SOMME.SI.ENS(C2:C100; A2:A100;"Paris"; C2:C100;">1000")

— Ventes du produit "Écran" en "Nord" entre jan et mars 2025 :
=SOMME.SI.ENS(D2:D500;
    B2:B500; "Écran";
    C2:C500; "Nord";
    A2:A500; ">="&DATE(2025;1;1);
    A2:A500; "<="&DATE(2025;3;31)
)
Ordre des arguments : SOMME.SI.ENS place la plage à sommer en premier, puis les paires (plage ; critère). SOMME.SI fait l'inverse. C'est la source d'erreur la plus fréquente en passant de l'une à l'autre.

SOMMEPROD — la formule universelle

SOMMEPROD multiplie des tableaux élément par élément puis additionne le résultat. En combinant des expressions booléennes, elle simule des critères impossibles avec les deux autres formules.

— Équivalent SOMME.SI.ENS (mais avec conditions calculées) :
=SOMMEPROD((A2:A100="Paris")*(C2:C100>1000)*D2:D100)

— Somme basée sur la longueur d'un texte (impossible avec SOMME.SI.ENS) :
=SOMMEPROD((NBCAR(B2:B100)>5)*C2:C100)

— Somme en excluant les erreurs :
=SOMMEPROD(SIERREUR(C2:C100;0)*(A2:A100="Paris"))

— Condition sur une autre feuille (référence croisée) :
=SOMMEPROD((Feuil2!A2:A100=E1)*Feuil2!C2:C100)

— OR logique (au moins une condition vraie) :
=SOMMEPROD(((A2:A100="Paris")+(A2:A100="Lyon")>0)*C2:C100)
Logique OR avec SOMMEPROD : SOMME.SI.ENS applique toujours une logique ET. Pour une logique OU (Paris ou Lyon), utilisez ((cond1)+(cond2)>0) dans SOMMEPROD.

Même scénario, trois formules

Objectif : sommer la colonne D (montant) quand colonne A = "Paris" et colonne B = "Q1".

— Avec SOMME.SI (impossible, 2 critères → à éviter) :
=SOMME.SI(A2:A100;"Paris";D2:D100)   ← ignore la condition B

— Avec SOMME.SI.ENS (recommandé) :
=SOMME.SI.ENS(D2:D100; A2:A100;"Paris"; B2:B100;"Q1")

— Avec SOMMEPROD (fonctionne mais plus lent) :
=SOMMEPROD((A2:A100="Paris")*(B2:B100="Q1")*D2:D100)

Tableau comparatif

CritèreSOMME.SISOMME.SI.ENSSOMMEPROD
Nombre de conditions1 seul1 à 127Illimité
Logique ET / OUET uniquementET uniquementET et OU
Conditions calculées (NBCAR, MOIS…)NonNonOui
Tolérance aux erreurs dans la plageNon (renvoie erreur)NonOui (avec SIERREUR)
Jokers (* ?)OuiOuiNon (utiliser RECHERCHE ou NBCAR)
Performance sur grands tableauxTrès rapideTrès rapidePlus lente
LisibilitéBonneBonneMoyenne (syntaxe moins intuitive)
DisponibilitéToutes versionsExcel 2007+Toutes versions

Quand choisir quoi ?

  • SOMME.SI : un seul critère, données volumineuses, besoin de simplicité.
  • SOMME.SI.ENS : plusieurs critères simultanés de type égalité, inégalité ou joker — c'est le choix par défaut pour la plupart des cas.
  • SOMMEPROD : logique OU, conditions basées sur des fonctions (NBCAR, MOIS, JOURSEM…), présence d'erreurs dans la plage, ou conditions croisées entre colonnes calculées.

Astuce : NB.SI.ENS fonctionne de la même façon

Les mêmes règles s'appliquent à NB.SI (1 critère) et NB.SI.ENS (plusieurs critères). SOMMEPROD peut aussi compter : =SOMMEPROD((A2:A100="Paris")*(B2:B100="Q1"))

SOMME vs SOUS.TOTAL vs AGREGAT → Ignorer les erreurs dans une somme Fiche SOMME.SI