Les deux syntaxes
- Une condition
- =MOYENNE.SI(plage;critère;plage_moyenne)
- Plusieurs conditions (toutes vraies)
- =MOYENNE.SI.ENS(plage_moyenne;plage1;critère1;plage2;critère2)
- Nombre maximal de conditions
- 127
Source : Microsoft, documentation des fonctions MOYENNE.SI et MOYENNE.SI.ENS.
Comment fonctionne MOYENNE.SI
La fonction prend trois arguments :
- plage : les cellules sur lesquelles porte le test (par exemple la colonne des matières) ;
- critère : la condition, entre guillemets si c’est du texte ou une comparaison (« Maths », « >=10 », « <>0 ») ;
- plage_moyenne (facultative) : les cellules à moyenner. Si vous l’omettez, Excel fait la moyenne de la plage testée elle-même.
Les cellules vides et les valeurs VRAI ou FAUX de la plage sont ignorées. Comme toute moyenne simple (voir la fonction MOYENNE sur Excel), chaque valeur retenue pèse autant que les autres.
Exemple : moyenne par matière et par trimestre
| Ligne | A : matière | B : trimestre | C : note |
|---|---|---|---|
| 2 | Maths | T1 | 12 |
| 3 | Maths | T1 | 15 |
| 4 | Français | T1 | 9 |
| 5 | Maths | T2 | 8 |
| 6 | Français | T2 | 14 |
| 7 | Maths | T2 | 13 |
| 8 | Français | T1 | 11 |
| Question | Formule | Résultat |
|---|---|---|
| Moyenne en maths | =MOYENNE.SI(A2:A8;"Maths";C2:C8) | 12 |
| Moyenne en français | =MOYENNE.SI(A2:A8;"Français";C2:C8) | 11,33 |
| Moyenne des notes d’au moins 10 | =MOYENNE.SI(C2:C8;">=10") | 13 |
| Maths au 2e trimestre | =MOYENNE.SI.ENS(C2:C8;A2:A8;"Maths";B2:B8;"T2") | 10,5 |
Vérification à la main
Maths : (12 + 15 + 8 + 13) ÷ 4 = 48 ÷ 4 = 12.
Français : (9 + 14 + 11) ÷ 3 = 34 ÷ 3 ≈ 11,33.
Notes ≥ 10 : (12 + 15 + 14 + 13 + 11) ÷ 5 = 65 ÷ 5 = 13.
Maths T2 : (8 + 13) ÷ 2 = 10,5.
Écrire les critères sans se tromper
| Objectif | Critère à écrire |
|---|---|
| Égal à un texte | "Maths" |
| Supérieur ou égal à 10 | ">=10" |
| Différent de zéro | "<>0" |
| Cellule non vide | "<>" |
| Comparaison avec une cellule (seuil en E1) | ">="&E1 |
| Texte qui commence par « Contrôle » | "Contrôle*" |
| Dates depuis le 1er janvier 2026 | ">="&DATE(2026;1;1) |
Le point d’interrogation remplace un caractère, l’astérisque une suite de caractères ; pour chercher un vrai « ? » ou « * », faites-le précéder d’un tilde (~). Les critères ne distinguent pas majuscules et minuscules.
MOYENNE.SI.ENS : l’ordre des arguments change
C’est l’erreur la plus fréquente : dans MOYENNE.SI, la plage à moyenner vient en dernier ; dans MOYENNE.SI.ENS, elle vient en premier. Toutes les conditions doivent être vraies en même temps (logique « ET »), et chaque plage de critères doit avoir la même taille et la même forme que la plage à moyenner.
Pour une logique « OU » (maths ou physique), MOYENNE.SI.ENS ne suffit pas. Avec Excel 365 ou 2021, écrivez =MOYENNE(FILTRE(C2:C8;(A2:A8="Maths")+(A2:A8="Physique"))). Avec une version plus ancienne, divisez la somme des deux SOMME.SI par la somme des deux NB.SI.
Corriger l’erreur #DIV/0!
MOYENNE.SI renvoie #DIV/0! quand aucune cellule ne remplit le critère : il n’y a rien à diviser. Les causes habituelles sont une faute de frappe dans le texte (« Math » au lieu de « Maths »), une espace en trop dans les cellules, des notes saisies comme du texte, ou une condition volontairement vide (trimestre pas encore commencé).
=SIERREUR(MOYENNE.SI(A2:A8;"Maths";C2:C8);"")Affiche une cellule vide au lieu de #DIV/0! ; à n’utiliser qu’après avoir vérifié que l’absence de résultat est normale.
MOYENNE.SI fait une moyenne simple. Si vos devoirs ont des coefficients différents, utilisez la moyenne pondérée avec SOMMEPROD, en ajoutant la condition sous forme de test logique.
Équivalents dans les autres outils
Dans Google Sheets, les fonctions s’appellent AVERAGEIF et AVERAGEIFS, avec les mêmes arguments dans le même ordre. En Python, on filtre la liste avant de calculer la moyenne, ou on utilise groupby avec pandas. Une calculatrice ne gère pas de condition : il faut saisir seulement les valeurs retenues. Le principe de base reste celui décrit dans calculer une moyenne.
Questions fréquentes
Comment faire une moyenne sans compter les zéros sur Excel ?
=MOYENNE.SI(C2:C50;"<>0") calcule la moyenne des seules valeurs différentes de zéro. Les cellules vides sont déjà ignorées par MOYENNE.
MOYENNE.SI fonctionne-t-il avec des cellules fusionnées ?
Mal : seule la première cellule d’une zone fusionnée contient la valeur. Répétez plutôt la matière sur chaque ligne.
Quelle différence entre MOYENNE.SI et SOUS.TOTAL ?
SOUS.TOTAL(101;plage) calcule la moyenne des lignes visibles après un filtre manuel ; MOYENNE.SI applique une condition écrite dans la formule, indépendamment des filtres.
MOYENNE.SI existe-t-il dans LibreOffice ?
Oui, LibreOffice Calc propose MOYENNE.SI et MOYENNE.SI.ENS avec la même syntaxe en français.
Sources
- Microsoft, « MOYENNE.SI », documentation d’Excel. support.microsoft.com
- Microsoft, « MOYENNE.SI.ENS », documentation d’Excel. support.microsoft.com
- Microsoft, « MOYENNE », documentation d’Excel. support.microsoft.com