Moyenne sans prendre en compte les 0?

jeromegmc

XLDnaute Occasionnel
Bonjour à tous,

Je cherche un formule excel pour faire une moyenne de cellules non adjacentes et cela en ne prenant pas en compte les zéros, j'ai essayé ça mais ça ne marche pas:


=MOYENNE(SI(B5=0,'',B5),SI(B15=0,'',B15),SI(B25=0,'',B25))

j'obtiens #VALEUR!

Un petit coup de main, merci


A+
 

jeromegmc

XLDnaute Occasionnel
Voici ce que dit l'aide Excel, mais elle ne dit pas si ca marche pour des cellules non adjadentes:


Code:
Formule Description (résultat) 
=MOYENNE(SI(A2:A7<>0, A2:A7,'')) Calcule la moyenne des nombres dans la liste à l'exception de ceux qui contiennent la valeur zéro, par exemple la cellule A6 (11,4) 
 

Remarque La formule de cet exemple doit être saisie sous la forme d'une formule matricielle. Après avoir copié l'exemple dans une feuille de calcul vide, sélectionnez la cellule A9. Appuyez sur F2 et sur CTRL+MAJ+ENTRÉE. Si la formule n'est pas saisie sous la forme d'une formule matricielle, l'erreur #VALEUR! est renvoyée.


Quelqu'un a une idée?

A+
 

David

XLDnaute Occasionnel
Salut jeromegmc et le forum

C'est normal que ça te renvois valeur puisque que '' n'est pas une valeur.

J'ai bien une soluce, mais elle est un peu spéciale, si quelqu'un à une meilleur idée, il hésite pas.

=MOYENNE(SI(B5=0;IV5;B5);SI(B15=0;IV5;B15);SI(B25=0;IV5;B25))

Tu renvois vers une cellule vide si la valeur est à 0.

J'ai mis IV5 mais tu peux mettre n'importe quelle cellule vide.

Tcho
 
A

Anynoor

Guest
Bonjour à tous,

La solution qui me vient tout de suite en tête est de créer une colonne intermédiaire, avec la formule suivante :

=SI(b5<>0;b5;'') et puis tu recoppies la formule jusqu'à c25

La moyenne va se faire normalement sans tenir compte des 0

Mais je pense qu'il doit exister une solution plus élégante.


Anynoor
 
J

jocelyn

Guest
Bonjour le Forum,
Bonjour jeromegmc,


voila alors je crois que tu peux essayé cette formule un peu tirée par les cheveux:

=SOMME(B5+B15+B25)/(SOMMEPROD((B5>0)*1)+SOMMEPROD((B15>0)*1)+SOMMEPROD((B25>0)*1))

ou

=SOMME(B5+B15+B25)/(NB.SI(B5:B5;'>0')+NB.SI(B15:B15;'>0')+NB.SI(B25:B25;'>0'))

pas beaucoup mieux

Jocelyn
 
A

Anynoor

Guest
Rebonjour à tous,

Pas de quoi Jocelyn ;)

Jeromegmc,

J'ai testé la formule matricielle, elle fonctionne très bien !

Mais comme l'a indiqué dans le fil donné par Brigitte : Formule matricielle, à valider par ctrl, maj et entrée

Anynoor
 

jeromegmc

XLDnaute Occasionnel
Merci à tous, pour conclure dans mon cas j'ai utilisé ça:

Code:
=(SOMME(B5,B15,B25,B35,B45))/(NB.SI(B5,'<>0')+NB.SI(B15,'<>0')+NB.SI(B25,'<>0')+NB.SI(B35,'<>0')+NB.SI(B45,'<>0'))

Anynoor, es tu sure que la formule matricielle marche pour des cellules non adjacentes? Quelle version d'excel possedes tu?


A+ et encore merci pour le coup de main
 

celine38

XLDnaute Nouveau
Bonjour, j'ai le même problème que toi, je cherche à faire une moyenne de cellules non adjacentes en ne prenant pas en compte les 0, et j'ai beau tenté plein de chjose dont vos soluce, ben ça marche pas j'ai toujours #valeur!
=D12/NB.SI((D4;D7;D9);'>0')
Voilà la dernière chose que j'ai tenté mais ça marche toujours pas !
Je vous envoie mon fichier. André m'a aidé precedemment pour résoudre un autre problème mais ça a pas tout résolu.
Il faut se pencher sur la feuille synthèse. La colonne D excatement. Quelqu'un a t il une idée lumineuse pour que ça marche ? [file name=fichier_celine38_20050923143226.zip size=3403]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/fichier_celine38_20050923143226.zip[/file]
 

Pièces jointes

  • fichier_celine38_20050923143226.zip
    3.3 KB · Affichages: 55

David

XLDnaute Occasionnel
Voila celine j'espere que ça ira.

J'ai mis en cellule vide A1, mais tu mets celle que tu veux ou tu es sur de ne jamais rien mettre.

tcho [file name=fichier_celine38_20050923164600.zip size=3609]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/fichier_celine38_20050923164600.zip[/file]

Message édité par: david, à: 23/09/2005 16:46
 

Pièces jointes

  • fichier_celine38_20050923164600.zip
    3.5 KB · Affichages: 62

Gael

XLDnaute Barbatruc
Bonjour Jérome, Monique, Céline, David,

J'ai essayé en nommant la plage de cellules discontinues en sélectionnant les cellules avec Ctrl puis insertion nom définir, ce qui donne dans référence à :

=Feuil1!$B$5;Feuil1!$B$15;Feuil1!$B$25;Feuil1!$B$35;Feuil1!$B$45

Puis la formule suivante donne un résultat correct:

=SOMME(Plage)/((B5>0)+(B15>0)+(B25>0)+(B35>0)+(B45>0))

NB.SI ne marche pas avec des plages discontinues de même que les conditions plage>0...

@+

Gael

Pardon, vous êtes tellement nombreux sur ce Fil que j'en ai oublié la moitié, alors bonjour Brigitte, Jocelyn, anymoor et j'espère que je n'ai oublié personne.

Gael

Message édité par: Gael, à: 23/09/2005 18:26
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 913
Messages
2 093 535
Membres
105 752
dernier inscrit
fred13340