Aller au contenu principal

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

Définition
La fonction MOYENNE.SI.ENS calcule la moyenne arithmétique des cellules d'une plage qui satisfont à plusieurs critères simultanés (logique ET). Elle accepte jusqu'à 127 paires plage/critère.

MOYENNE.SI.ENS (AVERAGEIFS en anglais) te sert dès qu'une seule condition ne suffit plus à isoler le sous-groupe qui t'intéresse, et que MOYENNE.SI te forcerait à filtrer les lignes à la main avant de calculer. Elle te permet de croiser plusieurs dimensions à la fois dans une seule formule, directement sur tes données brutes.

Imagine que tu veux connaître le salaire moyen des commerciaux de la région Nord ayant plus de 3 ans d'ancienneté, ou la marge moyenne des produits haut de gamme vendus en ligne. Avec MOYENNE.SI.ENS, tu obtiens ce résultat en une seule formule, sans filtre manuel ni tableau croisé dynamique. C'est un gain de temps considérable pour toutes tes analyses multi-critères.

Syntaxe

Clique sur un argument pour aller à son explication.

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

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

1

plage_moyenne

: la plage de cellules dont tu veux calculer la moyenne

Par exemple, si tu veux connaître le chiffre d'affaires moyen, tu indiques ici la colonne contenant les montants. Cette plage doit avoir exactement la même taille que toutes tes plages de critères.

2

plage_critères1

: la première plage où Excel applique ton critère de filtrage

Elle doit avoir exactement la même taille que plage_moyenne. Si tu veux filtrer par région, indique ici la colonne "Région".

3

critères1

: le critère à appliquer sur `plage_critères1`

Tu peux utiliser du texte entre guillemets ("Paris"), des nombres (100), des comparaisons (">50", "<=1000"), ou des jokers ("Mar*" pour tout ce qui commence par Mar).

Pour des critères dynamiques, concatène l'opérateur avec une référence de cellule : ">="&A1.

4

[plage_critères2], [critères2], ...

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

Chaque nouvelle paire ajoute une condition ET : une ligne n'entre dans la moyenne que si toutes les conditions sont vraies simultanément. Toutes les plages doivent avoir la même taille.

L’erreur fatale
Si aucune ligne ne remplit tous tes critères en même temps, MOYENNE.SI.ENS renvoie #DIV/0! : elle ne peut pas moyenner un ensemble vide. Enrobe-la de SIERREUR(MOYENNE.SI.ENS(...); « Aucune donnée ») pour un message propre.
Lucas, la mascotte du Dojo, fait une démonstration pas à pas de la fonction dans Excel

Exemples pratiques pas à pas

Exemple 1

Comment croiser deux critères avec la fonction MOYENNE.SI.ENS

Les entretiens annuels approchent et on te demande une référence chiffrée avant de rouvrir les grilles de salaire. Ton tableau liste chaque personne avec son poste, son ancienneté et son salaire, et tu veux le salaire moyen des développeurs qui ont plus de deux ans de maison, sans que les tout nouveaux arrivés tirent la moyenne vers le bas. La fonction MOYENNE.SI.ENS croise les deux conditions d'un coup et te sort ce salaire moyen en une seule formule, sans filtre ni tableau croisé dynamique.

Les étapes
  1. 1
    Dans une cellule, écris =MOYENNE.SI.ENS(.
  2. 2
    En 1er argument : sélectionne la plage des salaires à moyenner, C2:C19. C'est la seule plage que la fonction MOYENNE.SI.ENS calcule vraiment, et elle vient en tête, avant la moindre condition.
  3. 3
    En 2ᵉ argument : sélectionne la première colonne à filtrer, celle des postes, A2:A19. Elle doit couvrir exactement les mêmes lignes que la plage des salaires, sinon la fonction renvoie une erreur.
  4. 4
    En 3ᵉ argument : saisis le critère qui s'applique à cette colonne, "Développeur". C'est du texte, donc il passe entre guillemets, et seules les lignes portant ce poste restent candidates.
  5. 5
    En 4ᵉ argument : sélectionne la deuxième colonne à filtrer, celle de l'ancienneté, B2:B19. Chaque nouvelle paire de plage et de critère resserre la sélection, jamais l'inverse.
  6. 6
    En 5ᵉ argument : saisis le critère d'ancienneté avec l'opérateur et la valeur ensemble entre guillemets, ">2". Une ligne n'entre dans la moyenne que si elle remplit les deux conditions en même temps, ce qui la distingue de la fonction MOYENNE.SI.
  7. 7
    Ferme la parenthèse et appuie sur Entrée.
Au final, ta formule devrait ressembler à ça :=MOYENNE.SI.ENS(C2:C19; A2:A19; "Développeur"; B2:B19; ">2")
Explication
La fonction ne garde que les lignes qui cochent les deux cases en même temps, poste Développeur ET ancienneté supérieure à 2 ans, puis fait la moyenne de leurs seuls salaires, soit 54 777,78 €. Le développeur qui n'a qu'un an de maison reste dehors, et un développeur à deux ans pile serait écarté lui aussi : le critère ">2" est strict.
Exemple 2

Comment éviter l'erreur #DIV/0! avec les fonctions MOYENNE.SI.ENS et SIERREUR

Tu prépares le point satisfaction que tu envoies chaque mois, et le mois de juin vient tout juste de démarrer. Tes retours clients sont listés avec l'offre souscrite, le mois de la réponse et la note donnée, et tu veux afficher la note moyenne des clients Premium en juin. Le problème, c'est qu'aucun d'eux n'a encore répondu ce mois-ci : la fonction MOYENNE.SI.ENS ne trouve aucune ligne à moyenner et affiche une erreur #DIV/0! en plein milieu de ton récap. La fonction SIERREUR se charge de remplacer cette erreur par un message propre.

Les étapes
  1. 1
    Dans une cellule, écris =SIERREUR(.
  2. 2
    En 1er argument : écris le calcul à surveiller et referme-le, MOYENNE.SI.ENS(C2:C7; A2:A7; "Premium"; B2:B7; "Juin"). Cette moyenne croise deux conditions, l'offre Premium et le mois de juin, mais aucune ligne du tableau ne coche les deux à la fois, donc sa sélection est vide et elle renvoie #DIV/0!.
  3. 3
    En 2ᵉ argument : saisis le texte de secours à afficher, "Aucune donnée". C'est ce que la cellule montre à la place de l'erreur, et tu pourrais tout aussi bien y mettre 0 ou un tiret selon ce que ton tableau de bord doit afficher.
  4. 4
    Ferme la parenthèse et appuie sur Entrée.
Voici la formule que tu obtiens à la fin :=SIERREUR(MOYENNE.SI.ENS(C2:C7; A2:A7; "Premium"; B2:B7; "Juin"); "Aucune donnée")
Explication
Aucune ligne n'est à la fois Premium et datée de juin, donc la fonction MOYENNE.SI.ENS n'a rien à moyenner et renvoie l'erreur #DIV/0! (impossible de diviser par zéro valeur retenue). La fonction SIERREUR intercepte cette erreur et affiche « Aucune donnée » à la place, ce qui garde ton tableau de bord lisible. Dès qu'un client Premium notera en juin, la moyenne apparaîtra toute seule.
Lucas, la mascotte du Dojo, l'air gêné face à une erreur Excel

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

Erreur #VALEUR! – Plages de tailles différentes

C'est l'erreur la plus courante avec MOYENNE.SI.ENS. Elle survient quand plage_moyenne et les plages_critères n'ont pas exactement le même nombre de lignes. Une différence d'une seule ligne suffit à déclencher l'erreur.

Solution : Vérifie que toutes tes plages commencent et finissent à la même ligne. Si plage_moyenne est C1:C100, assure-toi que plage_critères1 est aussi A1:A100 et non A1:A99 ou A2:A100.

Erreur #DIV/0! – Aucune correspondance

Cette erreur apparaît quand aucune cellule ne satisfait tous les critères simultanément. Excel ne peut pas calculer la moyenne d'un ensemble vide.

Solution : Entoure ta formule avec SIERREUR : =SIERREUR(MOYENNE.SI.ENS(...); 0) pour afficher 0, ou =SIERREUR(MOYENNE.SI.ENS(...); "Aucune donnée") pour un message personnalisé. Vérifie aussi que tes critères correspondent bien aux valeurs réelles de tes données.

Critères avec opérateurs qui ne fonctionnent pas

Si ton critère contient un opérateur de comparaison (>, <, >=, <=, <>), tu dois le placer entre guillemets. Oublier les guillemets ou mal combiner avec une référence de cellule donne un résultat inattendu ou une erreur.

Solution : Écris ">100" au lieu de >100. Pour des critères dynamiques avec une référence de cellule, utilise ">="&A1 : l'opérateur entre guillemets, suivi de &, suivi de la référence sans guillemets.

Résultat incorrect avec des dates

Les dates dans Excel sont stockées comme des nombres. Si tu utilises "01/01/2024" directement comme critère texte, Excel peut ne pas reconnaître le format ou faire une comparaison incorrecte.

Solution : Utilise la fonction DATE pour construire ton critère : ">="&DATE(2024;1;1). Tu peux aussi référencer une cellule contenant la date : ">="&E1. Cela garantit une comparaison numérique correcte quel que soit le format d'affichage.

Lucas, la mascotte du Dojo, compare deux fonctions Excel

MOYENNE.SI.ENS vs MOYENNE.SI vs MOYENNE vs BDMOYENNE

Utilise MOYENNE.SI.ENS dès que tu as besoin de croiser deux critères ou plus. Pour un seul critère, MOYENNE.SI suffit. Pour une moyenne sans filtre, MOYENNE. BDMOYENNE est une alternative ancienne pour des logiques OU complexes.

CritèreMOYENNE.SI.ENSMOYENNE.SIMOYENNEBDMOYENNE
Nombre de critèresJusqu'à 1271 seulAucunIllimité
Syntaxe⭐⭐⭐ Intuitive⭐⭐⭐ Simple⭐⭐⭐ Très simple⭐ Complexe
Critères dynamiques✅ Facile avec &✅ Facile avec &❌ Non applicable⚠️ Via zone critères
Jokers (* et ?)✅ Oui✅ Oui❌ Non✅ Oui
Cas d'usage typiqueAnalyse multi-critères1 critère simpleMoyenne globaleCritères complexes OU
Le conseil du pro
Range ton seuil dans une cellule et concatène l'opérateur : « >= »&A1. Tu ajustes le filtre en changeant simplement la cellule, sans jamais rouvrir la formule.
FAQ

Questions fréquentes

Tu peux utiliser jusqu'à 127 paires plage/critère avec MOYENNE.SI.ENS. En pratique, tu dépasseras rarement 5 à 6 critères. Si tu te retrouves à en écrire beaucoup plus, c'est souvent le signe que tes données gagneraient à être mieux structurées, ou qu'un tableau croisé dynamique serait plus adapté pour cette analyse.

Ressources

Pour aller plus loin

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

Tout voir