Calcul Moyenne
Résolu
Cindy02
-
cindy001 Messages postés 102 Date d'inscription Statut Membre Dernière intervention -
cindy001 Messages postés 102 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Bonjour, je veux calculer des moyennes de la facon suivante et je n'ai aucune idée de comment faire
Sur le document ci-joint:
http://www.cijoint.fr/cjlink.php?file=cj201012/cij9YBdcEF.xls
de AM20 à FB619 j'ai des chiffres et de AM1020 à FB1619 j'ai des déciles D1 à D10
cque je veux c pour chaque colonne faire une macro vba qui me calculerait plus bas après la ligne 1619 ou dans une autre feuille pourquoi pas( mais ca ca n'a pas d'importance): la moyenne des chiffres de la ligne 20 à 619 sachant D1D2 ou D1D9 bref pour toutes les combinaisons possible de D
exemple en ligne 1620 on pourrait avoir en AM 1620 la moyenne de AM20 à AM 619 sachant qu'on a un D1 de AM 1020 à AM1619 en AN1620 la moyenne de AN 20 à AN619 si on a un D1 de AN 1020 à AN1619......... jusqu'à la colonne BF
J'ai fais ce premier exemple en utilisant un SOMME.SI de Excel diviser par NB.SI à la ligne 1620 pour les 9 prochaines lignes ca serait par exemple D2 D3 D4 ... D10
Ensuite par exemple D1D2, puis D1D3, D1D4 etc
Mais j'en ai besoin en vba et j'arrive pas ca fait 3 jours que jsuis dessus j'ai 2 lignes
MERCI A tous
Bonjour, je veux calculer des moyennes de la facon suivante et je n'ai aucune idée de comment faire
Sur le document ci-joint:
http://www.cijoint.fr/cjlink.php?file=cj201012/cij9YBdcEF.xls
de AM20 à FB619 j'ai des chiffres et de AM1020 à FB1619 j'ai des déciles D1 à D10
cque je veux c pour chaque colonne faire une macro vba qui me calculerait plus bas après la ligne 1619 ou dans une autre feuille pourquoi pas( mais ca ca n'a pas d'importance): la moyenne des chiffres de la ligne 20 à 619 sachant D1D2 ou D1D9 bref pour toutes les combinaisons possible de D
exemple en ligne 1620 on pourrait avoir en AM 1620 la moyenne de AM20 à AM 619 sachant qu'on a un D1 de AM 1020 à AM1619 en AN1620 la moyenne de AN 20 à AN619 si on a un D1 de AN 1020 à AN1619......... jusqu'à la colonne BF
J'ai fais ce premier exemple en utilisant un SOMME.SI de Excel diviser par NB.SI à la ligne 1620 pour les 9 prochaines lignes ca serait par exemple D2 D3 D4 ... D10
Ensuite par exemple D1D2, puis D1D3, D1D4 etc
Mais j'en ai besoin en vba et j'arrive pas ca fait 3 jours que jsuis dessus j'ai 2 lignes
MERCI A tous
A voir également:
- Calcul Moyenne
- Calcul moyenne excel - Guide
- Calcul km marche à pied gratuit - Télécharger - Sport
- Calcul charpente bois gratuit - Télécharger - Architecture & Déco
- Logiciel gratuit calcul valeur nutritionnelle - Télécharger - Santé & Bien-être
- Moyenne en anglais excel - Guide
6 réponses
Bonsoir,
Un début de réponse...
Le programme a l'air correct sur les premières lignes.
J'ai levé un premier cas de plantage car tu as des cellules sensées avoir des valeurs et il y a un espace seul dedans (sympa à trouver...). Je les annonce, tu pourras enlever le message annonçant leur référence.
Maintenant il plante un peu plus loin mais vu l'heure je ne cherche pas.
Je ne pourrais pas regarder prochainement. Si tu ne trouves pas le pourquoi ça sera après noel. Je détourne l'erreur vers un breack pour pouvoir consulter les variables.
En attendant tu as au moins la structure que le programme pourrait avoir.
http://www.cijoint.fr/cjlink.php?file=cj201012/cijtis1YbD.zip
Edit: j'ai trouvé l'erreur (division par 0), fichier en ligne corrigé.
Je n'affiche plus les valeurs non numériques.
Reste à voir si j'ai bien compris ta demande et si les résultats sont conformes (en tout cas ils sont corrects sur les 5-6 premières valeurs)
eric
Un début de réponse...
Le programme a l'air correct sur les premières lignes.
J'ai levé un premier cas de plantage car tu as des cellules sensées avoir des valeurs et il y a un espace seul dedans (sympa à trouver...). Je les annonce, tu pourras enlever le message annonçant leur référence.
Maintenant il plante un peu plus loin mais vu l'heure je ne cherche pas.
Je ne pourrais pas regarder prochainement. Si tu ne trouves pas le pourquoi ça sera après noel. Je détourne l'erreur vers un breack pour pouvoir consulter les variables.
En attendant tu as au moins la structure que le programme pourrait avoir.
http://www.cijoint.fr/cjlink.php?file=cj201012/cijtis1YbD.zip
Edit: j'ai trouvé l'erreur (division par 0), fichier en ligne corrigé.
Je n'affiche plus les valeurs non numériques.
Reste à voir si j'ai bien compris ta demande et si les résultats sont conformes (en tout cas ils sont corrects sur les 5-6 premières valeurs)
eric
Merci pour ta macro
http://www.cijoint.fr/cjlink.php?file=cj201012/cijkzy7OiB.xls
Y'a des différences là je suis en train d'essayer de chercher pourquoi:
ca marche très bien pour D1 jusqu'à D9 j'ai utilisé les fonctions excel pour faire les comparaisons.
J'ai mis en évidence (en couleur là ou les différences sont les plus flagrantes)
Mais j'avoue que j'ai du mal à comprendre pourquoi ca marche très bien pour D1 jusqu'à D9 etv pas après
Si tu peux qu'après noel ca sera parfait t déja très gentil de m'aider.
Merci beaucoup Bonne fetes
en attendant jcontinu à chercher
http://www.cijoint.fr/cjlink.php?file=cj201012/cijkzy7OiB.xls
Y'a des différences là je suis en train d'essayer de chercher pourquoi:
ca marche très bien pour D1 jusqu'à D9 j'ai utilisé les fonctions excel pour faire les comparaisons.
J'ai mis en évidence (en couleur là ou les différences sont les plus flagrantes)
Mais j'avoue que j'ai du mal à comprendre pourquoi ca marche très bien pour D1 jusqu'à D9 etv pas après
Si tu peux qu'après noel ca sera parfait t déja très gentil de m'aider.
Merci beaucoup Bonne fetes
en attendant jcontinu à chercher
Mais j'avoue que j'ai du mal à comprendre pourquoi ca marche très bien pour D1 jusqu'à D9 etv pas après
Peut-être que c'est parce que j'ai mal compris ta demande.
Pour D1D2 par exemple je fais la somme dans la colonne (contrôler cette somme en mettant un point d'arret dans la macro) de toutes les valeur ayant D1 ou D2 en vis à vis, et je compte le nombre de D1 et de D2 pour faire la moyenne.
Je n'ai fait aucun contrôle sur cette partie, je n'ai dépassé la ligne D4 sans planter que ce matin. Il y a peut-être une erreur dans le programme
D'ailleur au passage si nb=0 je met 0 comme moyenne, tu préfères peut-être une cellule vide (?)
eric
Peut-être que c'est parce que j'ai mal compris ta demande.
Pour D1D2 par exemple je fais la somme dans la colonne (contrôler cette somme en mettant un point d'arret dans la macro) de toutes les valeur ayant D1 ou D2 en vis à vis, et je compte le nombre de D1 et de D2 pour faire la moyenne.
Je n'ai fait aucun contrôle sur cette partie, je n'ai dépassé la ligne D4 sans planter que ce matin. Il y a peut-être une erreur dans le programme
D'ailleur au passage si nb=0 je met 0 comme moyenne, tu préfères peut-être une cellule vide (?)
eric
quand ya rien dans une cellule ouais faut que ca reste une cellule vide pour le calcule des moyennes ( parceque si on met 0 à la place des cellules vides ca va tout changer)
je vois pas de moyenne dans ta macro mais cqui faut faire c bien
faire la somme des chiffres de AM20 à AM619 (pour la colonne AM par exemple) à chaque fois que y'a le D1 ou D2 (c'est l'équivalent du SOMME.SI dans ma formule) dans la zone AM1020-AM1619
un exemple très simple:
si on aurait dans la zone AM1020-AM1619 un D1 en AM1058 un D2 en AM1101 et puis un autre D1 en AM1613 et que dans cette zone AM1020-AM1619 y'a aucun autre D1 ni D2
Et si on a les chiffres 5 en AM58, 10 en AM101, et 15 en AM613
Alors pour D1D2 pour la colonne AM on aurait la moyenne de 5 10 et 15: donc 10 c bien la somme des chiffres pour lesquels on a D1 ou D2 1000 lignes plus bas(c'est l'équivalent su SOMME.SI) diviser par 3(car on a 3 fois D1 ou D2.
C'est pas urgent
Merci encore
je vois pas de moyenne dans ta macro mais cqui faut faire c bien
faire la somme des chiffres de AM20 à AM619 (pour la colonne AM par exemple) à chaque fois que y'a le D1 ou D2 (c'est l'équivalent du SOMME.SI dans ma formule) dans la zone AM1020-AM1619
un exemple très simple:
si on aurait dans la zone AM1020-AM1619 un D1 en AM1058 un D2 en AM1101 et puis un autre D1 en AM1613 et que dans cette zone AM1020-AM1619 y'a aucun autre D1 ni D2
Et si on a les chiffres 5 en AM58, 10 en AM101, et 15 en AM613
Alors pour D1D2 pour la colonne AM on aurait la moyenne de 5 10 et 15: donc 10 c bien la somme des chiffres pour lesquels on a D1 ou D2 1000 lignes plus bas(c'est l'équivalent su SOMME.SI) diviser par 3(car on a 3 fois D1 ou D2.
C'est pas urgent
Merci encore
Merci encore et
dsl si jte réponds pas encore mais jsuis en train dfaire des verif pour voir parceque jme suis ptetre trompé dans mon SOMME.SI, jsuis pas encore sur.
Mais j'avou que jcomprends pas très bien ta macro que tu m'as gentillement filler.
Serait il possible que tu donne plus d'explication en commentaires parceque j'arrive pas très bien à voir comment t'as fais ces moyennes?
Merci encore.
Pour la macro elle est peut etre bonne jcontinu à verifier et à refaire mes calculs sur excel por savoir si c moi qui à faux.
Merci beucoup jpense que cet aprem jpourrais trépondre définitivement.
dsl si jte réponds pas encore mais jsuis en train dfaire des verif pour voir parceque jme suis ptetre trompé dans mon SOMME.SI, jsuis pas encore sur.
Mais j'avou que jcomprends pas très bien ta macro que tu m'as gentillement filler.
Serait il possible que tu donne plus d'explication en commentaires parceque j'arrive pas très bien à voir comment t'as fais ces moyennes?
Merci encore.
Pour la macro elle est peut etre bonne jcontinu à verifier et à refaire mes calculs sur excel por savoir si c moi qui à faux.
Merci beucoup jpense que cet aprem jpourrais trépondre définitivement.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Ca y est j'ai trouvé d'ou elles viennent les différences parceque moi quand je fais ces MOYENNE.SI avec Excel quand je calcule pour D4D6 je fais pas la moyenne de D4 D6 mais de tous les chiffres qui sont entre D4 D6 donc D4 D5 et D6.
Sinon on pourra voir ca la semaine prochaine après noel
bonnes fetes Merci encore
Sinon on pourra voir ca la semaine prochaine après noel
bonnes fetes Merci encore
Bonjour,
Apparemment les calculs sont corrects alors...
Une version avec quelques petits changement, améliorations et qcq commentaires en plus (aucun impact sur les calculs, pas la peine de tout recontrôler, juste 2-3 comparaisons).
Si la macro est très fréquemment utilisée (plusieurs fois par jours) on peut envisager de l'accélérer en travaillant en mémoire (je n'ai prêté attention à la quantité de données que trop tard pour corriger le tir...)
http://www.cijoint.fr/cjlink.php?file=cj201012/cijVJYjmzu.zip
eric
Apparemment les calculs sont corrects alors...
Une version avec quelques petits changement, améliorations et qcq commentaires en plus (aucun impact sur les calculs, pas la peine de tout recontrôler, juste 2-3 comparaisons).
Si la macro est très fréquemment utilisée (plusieurs fois par jours) on peut envisager de l'accélérer en travaillant en mémoire (je n'ai prêté attention à la quantité de données que trop tard pour corriger le tir...)
http://www.cijoint.fr/cjlink.php?file=cj201012/cijVJYjmzu.zip
eric