Bonjour,
Si tu veux renvoyer l'année par ANNEE(Livraison), tu ne peux utiliser MOYENNE.SI. Il faut revenir à la fonction MOYENNE en utilisant une condition qui lui envoie une matrice sélective de valeurs, formulation que t'a fournie debutant86...
L'affichage #DIV/0! pour sa part provient du fait qu'il n'y a pas de valeurs trouvées pour l'année de livraison recherchée, donc le dénominateur est à 0, d'où erreur de division par 0. Pour éliminer cet affichage et le remplacer, dans ce cas par 0, il faut mettre la formule initiale sous gestion d'erreur avec la fonction SIERREUR :
=SIERREUR(MOYENNE(SI(ANNEE(Livraison)=L3;Retard));0)
Sans oublier la validation matricielle.
Mais la fonction SIERREUR n'existe qu'à partir de 2007, si donc tu utilises une version 2003 d'Excel il faut revenir aux anciennes formulations obligeant à répéter la formule de base...
=SI(ESTERREUR(MOYENNE(SI(ANNEE(Livraison)=L3;Retard)));0;MOYENNE(SI(ANNEE(Livraison)=L3;Retard)))
Toujours sans oublier la validation matricielle (Ctrl+Maj+Entrée)
Une formule matricielle est une formule qui utilise une (ou des) matrices à la place de valeurs individuelles et/ou renvoie une matrice.
Beaucoup de fonctions Excel supportent un traitement matriciel, mais pas toutes... Pour que la formule fonctionne il convient alors de la valider par la combinaison de touches Ctrl+Maj+Entrée, qui a pour effet d'encadrer la formule par des accolades.
Si la formule ne doit renvoyer qu'un résultat, on la valide dans une seule cellule, si elle doit renvoyer plusieurs résultats (une matrice de résultats), avant saisie on doit sélectionner le nombre de cellules nécessaires aux résultats attendus, taper la formule pour la sélection et la valider matriciellement pour obtenir les résultats dans la plage sélectionnée.
Un cas particulier est celui de SOMMEPROD, fonction matricielle par définition mais qui ne nécessite pas de validation matricielle pour fonctionner.
Cordialement.