Bonjour à toutes et à tous,
Faisons court faisons bien
Je souhaite moyenner une suite de données suivant un ‘pas ‘ paramétrable par l’exécutant, exemple :
Ma série dans la colonne A
1
5
4
7
21
5
3
6
54
1
2
5
Un ‘pas ‘ de 3 par exemple, et on obtient dans la colonne B:
(1+5+4)/3 c'est-à-dire 3.3333
(7+21+5)/3
(3+6+54)/3
(1+2+5)/3

Si l’opérateur choisi un ‘pas’ de 4 :
(1+5+4+7)/4
(21+5+6+54)/4
La quantité de données de la colonne B = ENT(NBVAL(A:A)/’pas’)


Le code auquel j’ai pensé est le suivant :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Public Sub paramaverage()
Dim sht As Worksheet
Dim LastLigne As Long
Dim i, Step1, StepRef As Integer
Set sht = Sheets("MaFeuille_1")
 
 
With sht
Step1 = StepRef = .Cells(3, 5)
.Cells(1, 17) = Application.Average(.Range("A" & 1 & ":A" & StepRef).Value)
 
LastLigne = .Cells(5, 5) '.Range("A65536").End(xlUp).Row
 
For i = 2 To LastLigne Step 1
    .Cells(i, 17).Value = Application.Average(.Range("A" & (Step1 - StepRef) & ":A" & Step1).Value)
    Step1 = Step1 + StepRef
Next
End With
 
End Sub
Vous l’aurez bien compris, ma macro ne fonctionne pas… et n’étant qu’un novice ça n’aide en rien.

Un grand merci en avance pour ceux qui liront mon post, ceux qui essayeront de m’aider, et pour ceux qui réussiront

A bientôt !

Cheerio