SOMME, SOUS.TOTAL ou AGREGAT : quelle formule pour sommer ?
SOMME additionne tout, SOUS.TOTAL respecte les filtres, AGREGAT ignore à la fois les filtres, les lignes masquées et les erreurs. Comprendre ces différences évite des totaux incorrects dans les tableaux filtrés.
Vue d'ensemble
Additionne tout, toujours
Indépendant des filtres et des lignes masquées
=SOMME(C2:C100)
La plus simple et la plus rapide. Toutes versions.
Respecte le filtre automatique
N'additionne que les lignes visibles après filtrage
=SOUS.TOTAL(9;C2:C100)
9 = SOMME. Ignore les filtres, pas les masquages manuels. Toutes versions.
Respecte filtres + lignes masquées + erreurs
Le plus flexible des trois
=AGREGAT(9;5;C2:C100)
9 = SOMME, 5 = ignorer lignes masquées. Excel 2010+.
SOMME — la référence universelle
SOMME additionne toutes les cellules de la plage, qu'elles soient visibles ou masquées, filtrées ou non. C'est le choix par défaut quand vous ne travaillez pas avec des tableaux filtrés.
=SOMME(C2:C100)
=SOMME(C2:C100;E2:E100;G5)
=SOMME(C:C) ← colonne entière (attention aux en-têtes)
SOUS.TOTAL — le complice des filtres
SOUS.TOTAL prend deux arguments : un numéro de fonction (1 à 11 ou 101 à 111) et la plage. Quand un filtre automatique est actif, il ne calcule que sur les lignes visibles.
=SOUS.TOTAL(9;C2:C100) ← 9 = SOMME, respecte le filtre automatique
=SOUS.TOTAL(1;C2:C100) ← 1 = MOYENNE sur les lignes filtrées
=SOUS.TOTAL(2;C2:C100) ← 2 = NB (compte les nombres visibles)
=SOUS.TOTAL(103;C2:C100) ← 103 = NBVAL, ignore aussi les masquages manuels
Les numéros de fonction SOUS.TOTAL / AGREGAT
| N° | Fonction | N° (ignorer masqués) |
|---|---|---|
| 1 | MOYENNE | 101 |
| 2 | NB | 102 |
| 3 | NBVAL | 103 |
| 4 | MAX | 104 |
| 5 | MIN | 105 |
| 6 | PRODUIT | 106 |
| 7 | ECARTYPE | 107 |
| 8 | ECARTYPEP | 108 |
| 9 | SOMME | 109 |
| 10 | VAR | 110 |
| 11 | VAR.P | 111 |
AGREGAT — quand SOUS.TOTAL ne suffit pas
AGREGAT (Excel 2010+) offre deux avantages supplémentaires : il gère les lignes masquées manuellement ET peut ignorer les cellules contenant des erreurs.
Syntaxe : =AGREGAT(no_fonction; options; plage; [k])
Options :
0 = ignorer les SOUS.TOTAL et AGREGAT imbriqués
1 = ignorer les lignes masquées et les SOUS.TOTAL/AGREGAT imbriqués
2 = ignorer les valeurs d'erreur et les SOUS.TOTAL/AGREGAT imbriqués
3 = ignorer les lignes masquées et les erreurs
4 = ignorer rien
5 = ignorer les lignes masquées
6 = ignorer les erreurs
7 = ignorer les lignes masquées et les erreurs
=AGREGAT(9;5;C2:C100) ← SOMME en ignorant les lignes masquées
=AGREGAT(9;7;C2:C100) ← SOMME en ignorant lignes masquées ET erreurs
=AGREGAT(14;6;C2:C100;1) ← 14=GRANDE.VALEUR, 1=1ère valeur, ignorer erreurs
Même tableau, trois comportements différents
Vous avez 100 lignes de ventes. Vous filtrez sur "Paris" (20 lignes visibles). La colonne C contient une erreur #DIV/0! sur la ligne 5.
| Formule | Résultat avec filtre actif | Comportement face à l'erreur |
|---|---|---|
=SOMME(C2:C100) | Somme des 100 lignes | Renvoie #DIV/0! |
=SOUS.TOTAL(9;C2:C100) | Somme des 20 lignes visibles | Renvoie #DIV/0! |
=AGREGAT(9;7;C2:C100) | Somme des 20 lignes visibles | Ignore l'erreur, somme le reste |
AGREGAT pour les fonctions indisponibles dans SOUS.TOTAL
AGREGAT supporte 19 fonctions contre 11 pour SOUS.TOTAL, dont des fonctions absentes du mode filtré :
=AGREGAT(14;5;C2:C100;1) ← GRANDE.VALEUR : 1ère plus grande valeur visible
=AGREGAT(15;5;C2:C100;1) ← PETITE.VALEUR : 1ère plus petite valeur visible
=AGREGAT(17;5;C2:C100;0,5) ← QUARTILE.EXCLURE à 50% sur lignes visibles
=AGREGAT(18;5;C2:C100;3) ← QUARTILE.INCLURE 3e quartile sur lignes visibles
Tableau de décision
| Besoin | Formule |
|---|---|
| Somme simple, pas de filtre | =SOMME(...) |
| Total qui suit le filtre automatique | =SOUS.TOTAL(9;...) |
| Total qui ignore aussi les lignes masquées manuellement | =SOUS.TOTAL(109;...) |
| Total filtré avec des erreurs dans la plage | =AGREGAT(9;7;...) |
| GRANDE.VALEUR ou PERCENTILE sur plage filtrée | =AGREGAT(14;5;...;rang) |
| Excel 2007 ou antérieur, données filtrées | =SOUS.TOTAL(9;...) (AGREGAT non disponible) |
Astuce : Excel insère SOUS.TOTAL automatiquement
Quand vous convertissez une plage en tableau structuré (Ctrl+T) et activez la ligne de total (Création → Ligne des totaux), Excel insère automatiquement =SOUS.TOTAL(109;...) — pas SOMME. C'est le comportement attendu pour que le total s'adapte aux filtres.
Ignorer les erreurs dans une somme → SOMME.SI vs SOMME.SI.ENS Fiche AGREGAT