[Excel] : Moyenne / HELP :)
Résolu/Fermé
A voir également:
- [Excel] : Moyenne / HELP :)
- Liste déroulante excel - Guide
- Si et excel - Guide
- Aller à la ligne excel - Guide
- Word et excel gratuit - Guide
- Mise en forme conditionnelle excel - Guide
9 réponses
Bruce Willix
Messages postés
11968
Date d'inscription
mardi 24 mai 2011
Statut
Contributeur
Dernière intervention
12 juin 2018
2 590
28 déc. 2011 à 11:40
28 déc. 2011 à 11:40
Tu entres bien cette formule comme une formule vectorielle ?
Bon, je viens de remarquer que la formule " MOYENNE.SI " ne s'utilise que pour Excel 2010... Je suis sur 2003 (tout va bien...:-D)
Qqn connait une formule équivalente pour 2003 ?
Merci :)
Qqn connait une formule équivalente pour 2003 ?
Merci :)
yofa
Messages postés
1093
Date d'inscription
lundi 9 novembre 2009
Statut
Membre
Dernière intervention
1 mars 2013
207
Modifié par yofa le 28/12/2011 à 14:19
Modifié par yofa le 28/12/2011 à 14:19
Je suis vraiment mauvais, désolé pour la reponse que je vais te donner...
Si tu fais un si la valeur est inférieur a 70 alors valeur sinon rien
donc =if(cellule<=70;cellule;" ") et que tu déploies la cellule pour tout ton tableau
Et ensuite tu fait un =average(nouveautableau) alors tu auras ta reponse. mais ca nécessite d'ajouter une colonne... Jte recontact si je trouve mieux... xD
N'hesitez pas mettre votre sujet sur résolu, si tel est le cas! ^^
Si tu fais un si la valeur est inférieur a 70 alors valeur sinon rien
donc =if(cellule<=70;cellule;" ") et que tu déploies la cellule pour tout ton tableau
Et ensuite tu fait un =average(nouveautableau) alors tu auras ta reponse. mais ca nécessite d'ajouter une colonne... Jte recontact si je trouve mieux... xD
N'hesitez pas mettre votre sujet sur résolu, si tel est le cas! ^^
Cela va peut-être être plus facile avec l'exemple concret :
A
1. 41,03
2. 36,96
3. 37,37
4. 36,55
5. 46,67
6. 109,72
7. 109,72
8. 109,72
9. 109,72
10. 109,72
Voilà, il s'agit en fait d'âge (numérique)
Le but est de faire une moyenne de cette liste (ils sont tous déjà sous formules, c'est pourquoi à partir de A6 il est mentionné "109,72") en excluant les nombres supérieurs à 70,00 (dans mon cas, personne n'aura plus de 70 ans)
La formule MOYENNE.SI m'aurait bien aidé, mais j'ai pas 2010, que 2003...
Si possible, m'aider avec les formules en français svp :)
A
1. 41,03
2. 36,96
3. 37,37
4. 36,55
5. 46,67
6. 109,72
7. 109,72
8. 109,72
9. 109,72
10. 109,72
Voilà, il s'agit en fait d'âge (numérique)
Le but est de faire une moyenne de cette liste (ils sont tous déjà sous formules, c'est pourquoi à partir de A6 il est mentionné "109,72") en excluant les nombres supérieurs à 70,00 (dans mon cas, personne n'aura plus de 70 ans)
La formule MOYENNE.SI m'aurait bien aidé, mais j'ai pas 2010, que 2003...
Si possible, m'aider avec les formules en français svp :)
yofa
Messages postés
1093
Date d'inscription
lundi 9 novembre 2009
Statut
Membre
Dernière intervention
1 mars 2013
207
Modifié par yofa le 28/12/2011 à 14:39
Modifié par yofa le 28/12/2011 à 14:39
Oops mon excel est en angalis...
Alors je te disais de mettre a droite de ta colonne avec tes ages la formule
= SI ( colonneages<=70; colonneages; " " )
Ce qui va te donner :
1. 41,03 41,03
2. 36,96 36,96
3. 37,37 37,37
4. 36,55 36,55
5. 46,67 46,67
6. 109,72
7. 109,72
8. 109,72
9. 109,72
10. 109,72
Ensuite tu peux faire ta moyenne sur cette colonne...
=moyenne(nouveautableau)
Mais c'est embettant car tu dois ajouter une colonne...
Avec une macro je pense que cela devrait être plus facile...
Mais je connais pas...
Alors je te disais de mettre a droite de ta colonne avec tes ages la formule
= SI ( colonneages<=70; colonneages; " " )
Ce qui va te donner :
1. 41,03 41,03
2. 36,96 36,96
3. 37,37 37,37
4. 36,55 36,55
5. 46,67 46,67
6. 109,72
7. 109,72
8. 109,72
9. 109,72
10. 109,72
Ensuite tu peux faire ta moyenne sur cette colonne...
=moyenne(nouveautableau)
Mais c'est embettant car tu dois ajouter une colonne...
Avec une macro je pense que cela devrait être plus facile...
Mais je connais pas...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Ce serait une solution oui...
Je la retiens :)
Mais dans le sens où je suis en train de créer un template pour mon employeur, je dois le faire au mieux possible.
J'utiliserai ta solution si jamais je n'ai pas d'autre(s) solution(s)
D'autres bons samaritains qui me permettraient de faire cela sans créer un autre tableau ?
Un grand merci et merci à toi yofa :)
Je la retiens :)
Mais dans le sens où je suis en train de créer un template pour mon employeur, je dois le faire au mieux possible.
J'utiliserai ta solution si jamais je n'ai pas d'autre(s) solution(s)
D'autres bons samaritains qui me permettraient de faire cela sans créer un autre tableau ?
Un grand merci et merci à toi yofa :)
yofa
Messages postés
1093
Date d'inscription
lundi 9 novembre 2009
Statut
Membre
Dernière intervention
1 mars 2013
207
Modifié par yofa le 28/12/2011 à 16:13
Modifié par yofa le 28/12/2011 à 16:13
Alors comme je n'ai rien à faire, je me suis donc amuser à essayer de faire une macro en excel...
Elle est pas super et je dois encore l'améliorer mais elle fait ce qu'on lui demande...
N'hesitez pas mettre votre sujet sur résolu, si tel est le cas! ^^
Elle est pas super et je dois encore l'améliorer mais elle fait ce qu'on lui demande...
Sub Moyenne () Dim c as Range Dim Total, Moyenne As Double Dim Compteur As Integer Dim Maxi As double Maxi = 70 Compteur =0 Total = 0 Moyenne = 0 Application.Goto Reference:="Selection" For each c In Selection If c.Value <= Maxi Then Total = total + c.Value If c.Value <= Maxi Then Compteur = Compteur + 1 Moyenne = Total / compteur Range("E7").Select ActiveCell.FormulaR1C1 = Moyenne End sub
N'hesitez pas mettre votre sujet sur résolu, si tel est le cas! ^^
yofa
Messages postés
1093
Date d'inscription
lundi 9 novembre 2009
Statut
Membre
Dernière intervention
1 mars 2013
207
28 déc. 2011 à 15:38
28 déc. 2011 à 15:38
Sachant qu'il faut nommer ton tableau de valeur Selection
Et que E7 de la fonction range ( ) doit etre modifié par la cellule ou se trouve le resultat...
Et que E7 de la fonction range ( ) doit etre modifié par la cellule ou se trouve le resultat...
yofa
Messages postés
1093
Date d'inscription
lundi 9 novembre 2009
Statut
Membre
Dernière intervention
1 mars 2013
207
Modifié par yofa le 28/12/2011 à 15:50
Modifié par yofa le 28/12/2011 à 15:50
Il faut ajouter un événement...
Pour moi le mieux serait de le mettre sur la seconde feuille, l'événement serait :
Private Sub Worksheet_Change(ByVal Target As Range)
Ce qui permettrait donc si une valeur est modifié dans ta seconde feuille de recalculer la moyenne...
Pour moi le mieux serait de le mettre sur la seconde feuille, l'événement serait :
Private Sub Worksheet_Change(ByVal Target As Range)
Ce qui permettrait donc si une valeur est modifié dans ta seconde feuille de recalculer la moyenne...
yofa
Messages postés
1093
Date d'inscription
lundi 9 novembre 2009
Statut
Membre
Dernière intervention
1 mars 2013
207
Modifié par yofa le 28/12/2011 à 16:12
Modifié par yofa le 28/12/2011 à 16:12
Ca marche parfaitement pour moi xD
Il suffit d'ouvrir le vb soit alt + f11
Chercher dans l'arborescence à gauche ta seconde feuille excel.
N'hesitez pas mettre votre sujet sur résolu, si tel est le cas! ^^
Il suffit d'ouvrir le vb soit alt + f11
Chercher dans l'arborescence à gauche ta seconde feuille excel.
Dim c as Range Dim Total, Moyenne As Double Dim Compteur As Integer Dim Maxi As double Private Sub Worksheet_Change(ByVal Target As Range) Maxi = 70 Compteur =0 Total = 0 Moyenne = 0 ' Selection est le tableau de valeurs Application.Goto Reference:="Selection" For each c In Selection If c.Value <= Maxi Then Total = total + c.Value If c.Value <= Maxi Then Compteur = Compteur + 1 Next c Moyenne = Total / compteur ' Choisir la cellule à modifier ( Changer le E7 ) Range("E7").Select ActiveCell.FormulaR1C1 = Moyenne End sub
N'hesitez pas mettre votre sujet sur résolu, si tel est le cas! ^^
Bruce Willix
Messages postés
11968
Date d'inscription
mardi 24 mai 2011
Statut
Contributeur
Dernière intervention
12 juin 2018
2 590
29 déc. 2011 à 09:54
29 déc. 2011 à 09:54
Désolé d'intervenir si tard, ça vous aurait évité de vous lancer dans la création d'une macro, choix toujours ô combien hasardeux - et très ennuyeux dans un cadre professionnel, car le nombre de personnes capables de comprendre et éditer une macro est tout de même réduit.
Pour faire simple il suffit:
1. d'additionner les cellules pour lesquelles l'âge est inférieur à 70
2. de diviser ce nombre par le nombre d'occurences pour lesquels ce critère est rencontré.
Et donc, naturellement la formule est:
Et en français:
Pour faire simple il suffit:
1. d'additionner les cellules pour lesquelles l'âge est inférieur à 70
2. de diviser ce nombre par le nombre d'occurences pour lesquels ce critère est rencontré.
Et donc, naturellement la formule est:
=SUMIF(A1:A10;"<=70";A1:A10)/COUNTIF(A1:A10;"<=70")
Et en français:
=SOMME.SI(A1:A10;"<=70";A1:A10)/NB.SI(A1:A10;"<=70")
yofa
Messages postés
1093
Date d'inscription
lundi 9 novembre 2009
Statut
Membre
Dernière intervention
1 mars 2013
207
29 déc. 2011 à 11:45
29 déc. 2011 à 11:45
j'etais parti la dessus mais je savais pas qu'il existé un sumif... juste un countif...
C'est vrai que c'est plus facile...
C'est vrai que c'est plus facile...
yofa
Messages postés
1093
Date d'inscription
lundi 9 novembre 2009
Statut
Membre
Dernière intervention
1 mars 2013
207
29 déc. 2011 à 11:46
29 déc. 2011 à 11:46
Peu importe j'avais jamais fait de macro excel pour ma part... Au moins c'est fait...
Bruce Willix
Messages postés
11968
Date d'inscription
mardi 24 mai 2011
Statut
Contributeur
Dernière intervention
12 juin 2018
2 590
29 déc. 2011 à 11:50
29 déc. 2011 à 11:50
Bah, tant que ça marche :-) Perso, je supporte pas les macros et je fais tout ce que je peux pour éviter de devoir en mettre:
1. c'est ennuyeux pour la sécurité (il faut les activer ou stocker les fichiers dans des zones appropriées)
2. c'est très moyennement stable au cours des différentes versions d'excel
3. utilisées en réseau, ça s'update mal
4. c'est un super moyen de se faire pirater :-)
Mais - je me répète - simple question d'affinité/de goût.
1. c'est ennuyeux pour la sécurité (il faut les activer ou stocker les fichiers dans des zones appropriées)
2. c'est très moyennement stable au cours des différentes versions d'excel
3. utilisées en réseau, ça s'update mal
4. c'est un super moyen de se faire pirater :-)
Mais - je me répète - simple question d'affinité/de goût.
28 déc. 2011 à 11:53
Qu'est-ce que tu veux dire par "formule vectorielle" ?
Merci :)