Bonjour à tous,

Grand débutant en macro VBA, je n'arrive pas à résoudre un problème d'incompatibilité de type.
Voilà l'idée: j'ai des valeurs (colonne 19) dont je souhaite faire la moyenne par intervalle c'est-à-dire en fonction des valeurs stockées dans la colonne 11 et stocker ces moyennes dans la colonne 65.
Le problème se situe dans les conditions de ma boucle while...

Pourriez-vous m'aider SVP?
Merci d'avance!

Voici le programme:

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
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
Sub Moyenne()
 
Dim nb_cell As Integer
Dim pas As Integer
Dim p As Integer
Dim Total_cells As Integer
Dim nb_interval As Integer
Dim somme As Single
Dim Moyenne As Single
 
nb_interval = InputBox("nombre interval")
 
pas = 0
Moyenne = 0
p = 1
 
Total_cells = ActiveSheet.UsedRange.Rows.Count
 
While pas <= nb_interval
 
    For i = 4 To Total_cells
While [Cells(i, 11).Value > (374967 + pas * 2221 / nb_interval)] And [Cells(i, 11).Value <= (374967 + (pas + 1) * 2221 / nb_interval)]
        somme = somme + Cells(i, 19).Value
        nb_cell = nb_cell + 1
        Wend ' problèmes
 
    Moyenne = somme / nb_cell
    Cells(p, 65) = Moyenne
    p = p + 1
    somme = 0
    nb_cell = 0
    pas = pas + 1
    Next i
 
Wend
End Sub