Utilisation de Application.WorksheetFunction.Average

  • Initiateur de la discussion Initiateur de la discussion evzone
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

evzone

XLDnaute Nouveau
Bonjour,

Je suis etudiant et je dois creer une macro toute simple qui permettrait de donner la moyenne de 30 valeurs consecutives. Pour approximativement un total de 30 000 valeurs. Pour ce faire, j'ai donc cree une boucle: Voici mon code qui sera plus parlant :

i=90 ' Mon code commence a la cellule 90
For Compteur = 6 To 600


Cells(Compteur, 12) = Application.WorksheetFunction.Average(Cells(i, 2), Cells(i + 1, 2), Cells(i + 2, 2), Cells(i + 3, 2), Cells(i + 4, 2), Cells(i + 5, 2), Cells(i + 6, 2), Cells(i + 7, 2), Cells(i + 8, 2), Cells(i + 9, 2), Cells(i + 10, 2), Cells(i + 11, 2), Cells(i + 12, 2), Cells(i + 13, 2), Cells(i + 14, 2), Cells(i + 15, 2), Cells(i + 16, 2), Cells(i + 17, 2), Cells(i + 18, 2), Cells(i + 19, 2), Cells(i + 20, 2), Cells(i + 21, 2), Cells(i + 22, 2), Cells(i + 23, 2), Cells(i + 24, 2), Cells(i + 25, 2), Cells(i + 26, 2), Cells(i + 27, 2), Cells(i + 28, 2), Cells(i + 29, 2))
i = i + 29

Next Compteur

Ce code ne marche pas evidemment et je me demandais si vous pouviez m expliquer pourquoi. Je suis desole si cette question vous parait trop triviale, mon intention n est evidemment pas de polluer le forum, mais je suis vraiment debutant et je n ai pas acces a l aide excel... Merci
 
Re : Utilisation de Application.WorksheetFunction.Average

C'est la seule chose qu il y a dans mon code pour le moment, le reste est confidentiel malheureuseument... le probleme venait du compteur je ne peux le faire monter que jusqu a 474... Et c est la que je ne comprends plus mais ce sont simplement des maths : si j ai 28000 valeurs et que je dois sortir une moyenne toutes les 30 valeurs pourquoi je ne peux pas monter jusqu a 900 environ???
 
Re : Utilisation de Application.WorksheetFunction.Average

Bonjour à tous
Cette fonction est parfaitement correcte pour autant que les cellules visées contiennent des données numériques. Si les cellules visées sont vides, une erreur survient.
Essayez en écrivant :
VB:
Sub toto()
Dim i, Compteur
  i = 90
  For Compteur = 6 To 600
    On Error Resume Next
    Cells(Compteur, 12) = Application.WorksheetFunction.Average(Cells(i, 2), Cells(i + 1, 2), Cells(i + 2, 2), Cells(i + 3, 2), Cells(i + 4, 2), Cells(i + 5, 2), Cells(i + 6, 2), Cells(i + 7, 2), Cells(i + 8, 2), Cells(i + 9, 2), Cells(i + 10, 2), Cells(i + 11, 2), Cells(i + 12, 2), Cells(i + 13, 2), Cells(i + 14, 2), Cells(i + 15, 2), Cells(i + 16, 2), Cells(i + 17, 2), Cells(i + 18, 2), Cells(i + 19, 2), Cells(i + 20, 2), Cells(i + 21, 2), Cells(i + 22, 2), Cells(i + 23, 2), Cells(i + 24, 2), Cells(i + 25, 2), Cells(i + 26, 2), Cells(i + 27, 2), Cells(i + 28, 2), Cells(i + 29, 2))
    On Error GoTo 0
    i = i + 29
  Next Compteur
End Sub
ou plus simplement :
VB:
Sub toto()
Dim i, Compteur
  i = 90
  For Compteur = 6 To 600
    On Error Resume Next
    Cells(Compteur, 12) = WorksheetFunction.Average(Cells(i, 2).Resize(30, 1).Value)
    On Error GoTo 0
    i = i + 29
  Next Compteur
End Sub
ROGER2327
#5287


Dimanche 15 Merdre 138 (Saints Serpents d’Airain - fête Suprême Tierce)
13 Prairial An CCXIX, 4,4908h - pois
2011-W22-3T10:46:40Z
 
Re : Utilisation de Application.WorksheetFunction.Average

Suite…
Je n'avais pas encore vu les messages #4 et #5 lors de l'envoi de ma réponse. S'il s'agit bien de
…sortir une moyenne toutes les 30 valeurs…
j'écrirais i=i+30 au lieu de i=i+29.

Quant à la confidentialité des données, marre ! Il n'est pas bien difficile de bidonner des données pour qu'elles perdent leur confidentialité supposée (car rien n'est confidentiel dans le monde de Monsieur Bill).​
ROGER2327
#5288


Dimanche 15 Merdre 138 (Saints Serpents d’Airain - fête Suprême Tierce)
13 Prairial An CCXIX, 4,7373h - pois
2011-W22-3T11:22:10Z
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
10
Affichages
448
  • Question Question
Microsoft 365 Export données
Réponses
4
Affichages
665
Réponses
7
Affichages
802
Réponses
20
Affichages
1 K
Retour