Aller au contenu principal

Qu'est-ce que la fonction SOMME.SI.ENS ?

Définition
La fonction SOMME.SI.ENS additionne les cellules d'une plage qui satisfont à plusieurs critères simultanés (logique ET). La plage à additionner se place en premier, avant les paires plage/critère.

SOMME.SI.ENS (SUMIFS en anglais) te sert dès qu'une seule condition ne suffit plus à isoler ce que tu veux additionner, et que tu serais tenté de filtrer ton tableau à la main ou d'empiler plusieurs SOMME.SI pour t'en sortir. Elle te permet de croiser autant de critères que nécessaire dans une seule formule, sans toucher au tableau lui-même.

Concrètement, c'est elle qui calcule le chiffre d'affaires d'un vendeur précis sur une région donnée, le total des dépenses Formation du premier trimestre, les commandes Premium dans une fourchette de montant, ou le total des produits dont le nom contient un mot-clé. Tu poses tes conditions, Excel fait la somme.

Syntaxe

Clique sur un argument pour aller à son explication.

Contrairement à SOMME.SI où la plage à additionner est en dernier argument, SOMME.SI.ENS la place en premier. C'est la source d'erreur la plus fréquente quand on vient de SOMME.SI.

Lucas, la mascotte du Dojo, inspecte les arguments de la fonction à la loupe

Comprendre chaque paramètre de la fonction SOMME.SI.ENS

1

somme_plage

: la plage contenant les valeurs à additionner

Généralement une colonne de montants, de quantités ou de tout autre valeur numérique. Par exemple C2:C100 si tes montants sont en colonne C.

Cette plage doit avoir exactement la même taille que toutes tes plages de critères. Tu peux aussi référencer la colonne entière (C:C) pour que la formule s'adapte automatiquement quand ton tableau s'agrandit.

2

plage_critère1

: la première plage sur laquelle tu appliques une condition

Par exemple A2:A100 pour filtrer sur les valeurs de la colonne A. Elle doit avoir exactement le même nombre de lignes que somme_plage.

3

critère1

: la condition à vérifier sur `plage_critère1`

Ça peut être un texte comme "Paris", un nombre comme 1000, ou un opérateur comme ">=100". Pour les opérateurs avec des références de cellules, utilise ">=" & E1. Tu peux aussi utiliser les caractères génériques * et ? pour le texte.

4

[plage_critère2], [critère2], ...

: tu peux ajouter jusqu'à 126 paires supplémentaires plage/critère(facultatif)

Tous les critères sont combinés en ET : une ligne n'est additionnée que si toutes les conditions sont vraies simultanément. Si tu as besoin d'un OU, additionne plusieurs SOMME.SI.ENS.

Attention : Toutes les plages (somme_plage et plages_critères) doivent avoir exactement la même taille. Une différence d'une seule ligne provoque une erreur #VALEUR! ou un résultat silencieusement faux.

L’erreur fatale
Attention au piège quand tu viens de SOMME.SI : avec SOMME.SI.ENS, la plage à additionner passe en PREMIER, pas en dernier. Écris SOMME.SI.ENS(somme_plage; plage_critère1; critère1; ...). C'est l'erreur numéro un quand on migre d'une fonction à l'autre.
Lucas, la mascotte du Dojo, fait une démonstration pas à pas de la fonction dans Excel

Exemples pratiques pas à pas

Exemple 1

Comment additionner sur deux critères avec la fonction SOMME.SI.ENS

La réunion commerciale est dans une heure et ton chef veut un seul chiffre : ce que Dupont a rapporté sur Paris, et rien d'autre. Ton export liste chaque vente avec sa région, son commercial, sa ville et son montant, et tu veux ce total croisé sans toucher au tableau. La fonction SOMME.SI.ENS additionne uniquement les lignes qui remplissent les deux conditions en même temps.

Les étapes
  1. 1
    Dans une cellule, écris =SOMME.SI.ENS(.
  2. 2
    En 1er argument : sélectionne la colonne des montants, D2:D19. Elle passe en premier, à l'inverse de la fonction SOMME.SI où elle arrivait en dernier.
  3. 3
    En 2ᵉ argument : sélectionne la colonne des régions, A2:A19. Elle doit couvrir exactement les mêmes lignes que la plage des montants, sinon le résultat est faux.
  4. 4
    En 3ᵉ argument : écris le premier critère, "Paris", entre guillemets puisque c'est du texte. Toutes les ventes de Lyon sortent du calcul.
  5. 5
    En 4ᵉ argument : sélectionne la colonne des commerciaux, B2:B19. C'est elle qui porte la seconde condition.
  6. 6
    En 5ᵉ argument : écris le second critère, "Dupont". La fonction n'additionne que les lignes où les deux conditions sont vraies à la fois, et tu peux enchaîner d'autres couples plage puis critère sur le même modèle.
  7. 7
    Ferme la parenthèse et appuie sur Entrée.
Au final, ta formule devrait ressembler à ça :=SOMME.SI.ENS(D2:D19; A2:A19; "Paris"; B2:B19; "Dupont")
Explication
La fonction balaie les 18 lignes et ne retient que les sept où la région est Paris et le commercial Dupont. Leurs montants s'additionnent pour donner 17 600 €, alors que le tableau n'a été ni trié ni filtré.
Exemple 2

Comment additionner sur un intervalle de dates avec la fonction SOMME.SI.ENS

La clôture du trimestre tombe demain et on te réclame le budget Formation réellement consommé du 1er janvier au 31 mars. Ton export comptable aligne toutes les dépenses de l'année avec leur date, leur catégorie et leur montant, et tu dois isoler une seule catégorie sur une seule période. La fonction SOMME.SI.ENS encaisse les trois conditions d'un coup, y compris les deux bornes posées sur la même colonne de dates.

Les étapes
  1. 1
    Dans une cellule, écris =SOMME.SI.ENS(.
  2. 2
    En 1er argument : sélectionne la colonne des montants, C2:C8, toujours en tête avec cette fonction.
  3. 3
    En 2ᵉ argument : sélectionne la colonne des catégories, B2:B8.
  4. 4
    En 3ᵉ argument : écris le critère correspondant, "Formation", pour écarter tout ce qui relève du matériel.
  5. 5
    En 4ᵉ argument : sélectionne la colonne des dates, A2:A8. C'est elle qui portera la borne de début.
  6. 6
    En 5ᵉ argument : écris la borne basse en collant l'opérateur à la date avec une esperluette, ">="&"01/01/2026". Sans ce &, Excel lirait le critère comme un texte au lieu d'une comparaison.
  7. 7
    En 6ᵉ argument : sélectionne à nouveau la colonne des dates, A2:A8. Rien n'interdit d'utiliser deux fois la même colonne, c'est même ce qui permet de fabriquer un intervalle.
  8. 8
    En 7ᵉ argument : écris la borne haute, "<="&"31/03/2026". Seules les dépenses de Formation comprises entre les deux dates sont retenues.
  9. 9
    Ferme la parenthèse et appuie sur Entrée.
Voici la formule que tu obtiens à la fin :=SOMME.SI.ENS(C2:C8; B2:B8; "Formation"; A2:A8; ">="&"01/01/2026"; A2:A8; "<="&"31/03/2026")
Explication
Trois conditions se combinent, et les deux dernières portent sur la même colonne de dates pour en faire un intervalle. Seules les dépenses Formation tombant entre le 1er janvier et le 31 mars survivent (1 500 + 2 200 + 1 800), soit 5 500 €. Celles d'avril restent dehors.
Exemple 3

Comment utiliser un caractère générique avec la fonction SOMME.SI.ENS

Un client au téléphone te demande ce que pèse la gamme Pro en Île-de-France, et il attend le chiffre maintenant. Tes ventes listent la région, le nom du produit et le montant, mais la gamme Pro se cache derrière plusieurs libellés (Excel Pro, Office Pro Suite), impossible à viser avec un critère exact. La fonction SOMME.SI.ENS accepte un caractère générique dans son critère et ramasse tous ces produits d'un seul geste.

Les étapes
  1. 1
    Dans une cellule, écris =SOMME.SI.ENS(.
  2. 2
    En 1er argument : sélectionne la colonne des montants à additionner, C2:C7.
  3. 3
    En 2ᵉ argument : sélectionne la colonne des régions, A2:A7.
  4. 4
    En 3ᵉ argument : écris le critère exact, "Île-de-France". Sur la région tu ne veux aucune approximation, c'est celle-là et pas une autre.
  5. 5
    En 4ᵉ argument : sélectionne la colonne des produits, B2:B7.
  6. 6
    En 5ᵉ argument : écris le critère générique "*Pro*". Chaque * accepte n'importe quelle suite de caractères, donc la fonction retient tout nom contenant « Pro », que le mot soit au début, au milieu ou à la fin.
  7. 7
    Ferme la parenthèse et appuie sur Entrée.
Une fois les morceaux assemblés, ta formule donne ça :=SOMME.SI.ENS(C2:C7; A2:A7; "Île-de-France"; B2:B7; "*Pro*")
Explication
L'étoile remplace n'importe quelle suite de caractères, donc "*Pro*" accepte tout produit dont le nom contient « Pro », où que le mot se trouve. Croisé avec la région, il ne reste qu'Excel Pro et Office Pro Suite en Île-de-France (299 + 599), soit 898 €.
Exemple 4

Comment rendre les critères dynamiques avec la fonction SOMME.SI.ENS

Ton tableau de bord doit encaisser toutes les questions de la réunion sans que tu ailles rouvrir la formule à chaque fois. Tes ventes sont listées par commercial et par mois, et tu veux pouvoir changer le vendeur, le mois et le montant plancher juste en tapant dans trois cellules. La fonction SOMME.SI.ENS lit ses critères directement dans ces cellules, et le total se recalcule à chaque frappe.

Les étapes
  1. 1
    Dans une cellule, écris =SOMME.SI.ENS(.
  2. 2
    En 1er argument : sélectionne la colonne des montants, $C$2:$C$7, et fige-la avec des $. La formule ne glissera pas quand tu la recopieras ailleurs dans le tableau de bord.
  3. 3
    En 2ᵉ argument : sélectionne la colonne des commerciaux, $A$2:$A$7.
  4. 4
    En 3ᵉ argument : clique sur la cellule F1, celle où tu tapes le nom du vendeur. Une référence de cellule s'écrit telle quelle, sans guillemets autour.
  5. 5
    En 4ᵉ argument : sélectionne la colonne des mois, $B$2:$B$7.
  6. 6
    En 5ᵉ argument : clique sur la cellule F2, qui contient le mois voulu. Changer son contenu suffit désormais à obtenir un nouveau total.
  7. 7
    En 6ᵉ argument : sélectionne à nouveau la colonne des montants, $C$2:$C$7, cette fois comme plage à tester. Rien n'empêche une colonne d'être à la fois additionnée et filtrée.
  8. 8
    En 7ᵉ argument : écris ">="&F3, où l'esperluette colle l'opérateur au contenu de la cellule. Écrire ">=F3" d'un seul bloc ne marcherait pas, Excel prendrait « >=F3 » pour du texte au lieu d'aller lire la cellule.
  9. 9
    Ferme la parenthèse et appuie sur Entrée.
En mettant tout bout à bout, tu écris :=SOMME.SI.ENS($C$2:$C$7; $A$2:$A$7; F1; $B$2:$B$7; F2; $C$2:$C$7; ">="&F3)
Explication
Un critère texte se référence tel quel (F1, F2), sans guillemets ni concaténation. Un critère avec opérateur se construit en collant le signe à la cellule (">="&F3), sinon Excel chercherait le texte « >=F3 » à la lettre et renverrait 0. Avec Dupont, janvier et un plancher de 1 000 €, le total tombe à 4 150 €.
Lucas, la mascotte du Dojo, l'air gêné face à une erreur Excel

Les erreurs fréquentes avec la fonction SOMME.SI.ENS

Erreur #VALEUR! – Plages de tailles différentes

Tu obtiens #VALEUR! quand tes plages n'ont pas toutes la même taille. Si somme_plage va de C2 à C100 (99 lignes), toutes les plages_critères doivent aussi couvrir exactement 99 lignes. Une différence d'une seule ligne suffit.

Solution : Vérifie que toutes tes plages commencent à la même ligne et finissent à la même ligne. Utilise des références absolues comme $C$2:$C$100 pour éviter les décalages lors de la copie de la formule.

Résultat 0 alors que des données correspondent

Causes fréquentes : format texte vs nombre (un "100" en texte ne matche jamais 100 en nombre), espaces invisibles avant ou après le texte dans les données ou les critères, ou aucune ligne ne satisfait toutes les conditions simultanément.

Solution : Teste chaque critère séparément avec SOMME.SI pour identifier lequel pose problème. Vérifie le format des cellules (clic droit > Format de cellule). Pour nettoyer les espaces invisibles, applique SUPPRESPACE() à tes données sources.

Ordre des paramètres inversé (venant de SOMME.SI)

Si tu connais SOMME.SI, tu vas naturellement placer somme_plage en dernier. Avec SOMME.SI.ENS, elle doit être en premier. C'est la source d'erreur numéro un en migration de formule.

Solution : Mémorise que SOMME.SI.ENS commence toujours par la plage à additionner : =SOMME.SI.ENS(somme_plage; plage_critère1; critère1; ...). La plage à sommer est le premier argument, pas le dernier.

Opérateurs de comparaison mal formés

Écrire >100 directement dans la formule au lieu de ">100" entre guillemets. Ou écrire ">E1" avec des guillemets autour de la référence au lieu de ">"&E1.

Solution : Pour une valeur fixe, mets l'opérateur entre guillemets : ">= 100". Pour une référence de cellule, utilise la concaténation : ">="&E1. Ne mets jamais de guillemets autour de la référence de cellule.

Lucas, la mascotte du Dojo, compare deux fonctions Excel

SOMME.SI.ENS vs SOMME.SI vs SOMMEPROD

Utilise SOMME.SI.ENS pour la majorité des besoins multicritères : c'est simple, lisible et performant. Réserve SOMMEPROD pour les cas vraiment complexes nécessitant des logiques OU sophistiquées ou des calculs matriciels.

CritèreSOMME.SISOMME.SI.ENSSOMMEPROD
Nombre de critères1 seulJusqu'à 127Illimité
Ordre des paramètresPlage ; critère ; [somme]Somme ; plage ; critère ; ...Différent (produits)
Logique ET❌ Non✅ Oui (natif)✅ Oui (avec *)
Logique OU✅ En additionnant des formules✅ En additionnant des formules✅ Avec +
Facilité⭐⭐⭐⭐⭐⭐⭐⭐
Cas d'usageCritère simpleMulti-critères ETCalculs complexes
Le conseil du pro
Range tes critères dans des cellules et référence-les : SOMME.SI.ENS($C$2:$C$100; $A$2:$A$100; E1; $B$2:$B$100; F1). Tu changes de région ou de vendeur sans jamais rouvrir la formule.
Lucas, la mascotte du Dojo, avec une ampoule, partage des astuces avancées

Astuces avancées avec SOMME.SI.ENS

1Astuce

Simuler un OU logique en additionnant deux formules

Pour additionner les ventes de Paris OU Lyon, somme deux formules : =SOMME.SI(A:A;"Paris";C:C)+SOMME.SI(A:A;"Lyon";C:C). Pour un OU avec d'autres critères en ET (Paris OU Lyon ET année 2024) : =SOMME.SI.ENS(C:C;A:A;"Paris";D:D;"2024")+SOMME.SI.ENS(C:C;A:A;"Lyon";D:D;"2024").
C'est la technique standard dès que tu veux un OU sur un seul critère tout en conservant les autres en ET.

2Astuce

Référencer des colonnes entières pour les tableaux dynamiques

Utilise C:C à la place de C2:C100 : la formule s'adapte automatiquement quand tu ajoutes des lignes sans avoir à aller modifier chaque plage. Excel ignore les en-têtes et les cellules vides.
Attention : les colonnes entières ralentissent légèrement le recalcul sur des fichiers très lourds. Si tu travailles avec des milliers de lignes, préfère des plages fixes avec une marge généreuse comme C2:C10000.

3Astuce

Exclure des valeurs avec l'opérateur <>

Pour additionner tout sauf certaines valeurs, utilise l'opérateur <> : =SOMME.SI.ENS(C:C; A:A; "<>Paris"; B:B; "<>Dupont") additionne tout sauf les lignes où la région est Paris ET le commercial est Dupont. Pratique pour exclure des anomalies, des tests ou des entrées particulières sans les supprimer de la table.
Si tu veux exclure Paris OU Dupont (pas les deux), additionne deux formules avec les exclusions séparées.

4Astuce

Combiner avec INDIRECT pour des sources dynamiques

Pour des rapports qui changent de feuille source selon un paramètre, combine avec INDIRECT : =SOMME.SI.ENS(INDIRECT("Feuil2!C:C"); INDIRECT("Feuil2!A:A"); E1). Tu peux même stocker le nom de la feuille dans une cellule et la référencer dans INDIRECT.
C'est une technique avancée utile pour des classeurs consolidés multi-onglets où la structure de chaque feuille est identique.

FAQ

Questions fréquentes

SOMME.SI n'accepte qu'un seul critère, tandis que SOMME.SI.ENS peut en utiliser jusqu'à 127 simultanément. De plus, l'ordre des paramètres est différent : SOMME.SI.ENS commence par la plage à additionner, alors que SOMME.SI la place en dernier. Dès que tu dois croiser deux conditions ou plus, passe directement à SOMME.SI.ENS. Elle peut aussi remplacer SOMME.SI avec un seul critère, donc certains l'utilisent systématiquement pour ne mémoriser qu'une seule syntaxe.

Ressources

Pour aller plus loin

Continue sur ta lancée après la fonction SOMME.SI.ENS : la leçon associée, un modèle prêt à l'emploi et le guide pour progresser.

Tout voir