Combiner SOMMEPROD et Moyenne : est-ce possible ?

j'ai un tableau où je souhaite savoir par année de programmation, la moyenne des mois de retard de chantier.

Je pense qu'il y a possibilité de s'en sortir avec sommeprod et moyenne, mais je ne vois pas comment

Bonjour,

=MOYENNE.SI(Prog;I3;Retard)

On ne peut pas toujours utiliser cette fonction, mais quand on le peut pas de raison de s'en priver !

Cordialement.

Bonjour,

J'espère que c'est correct !:

J'ai du déplacer la ligne qui affichait une erreur en dehors du tableau.

=SOMMEPROD((Prog=I3)*((Retard)))/SOMME(N(Retard))

j'ai pris ici l'ensemble des valeurs ... faut-il ne prendre que les vrais retards ?

merci pour vos participations.

j'ai essayé les 2 formules proposées, et c'est la 1e qui renvoit les bons résultats :

=MOYENNE.SI(Prog;K3;Retard)

je ne connaissait pas cette formule

Bravo MFerrand !

bon maintenant j'ai voulu faire la même chose mais suivant l'année de livraison (colonne N)

=MOYENNE.SI(Livraison;L6;Retard) mais çà me renvoit

cependant, pour que çà fonctionne, j'ai du rajouter une colonne "Année de livraison" colonne H :

=MOYENNE.SI(Année_livraison;L6;Retard)

Suis-je réellement obligée de rajouter cette colonne, car j'aimerai partir de la colonne G

Bonjour le Forum,

Bonjour Zeldanat28, steelson, MFerrand,

Pour ta dernière demande si tu veux te servir de la colonne G tu peux tester cette formule

=MOYENNE(SI(ANNEE(Livraison)=L3;Retard))

Attention formule matricielle a valider par les touches CTRL, Maj (au dessus de CTRL) et entrée

Cordialement

bonjour,

merci çà fonctionne.

je ne connaissais pas le CTRL+MAJ : qu'est-ce qu'une formule matricielle ?

Sinon certaines cellules me renvoient DIV/O.

J'ai donc fait ceci :

=SI(MOYENNE(SI(ANNEE(Livraison)=A40;Retard))=0;"";(MOYENNE(SI(ANNEE(Livraison)=A40;Retard))))

mais j'ai toujours le DIV/O

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.

merci pour vos réponses

le div/o a bien disparu

Rechercher des sujets similaires à "combiner sommeprod moyenne possible"