Bonsoir,

Un petit souci technique sur vba..

J'ai essayé de coder une fonction me permettant - en recherchant dans une plage de données - de calculer la moyenne des prix pondérée par les volumes, pour les clients répondants à certaines conditions

J'ai droit à un #Value quand j'essaye d'utiliser cette fonction..
Qqn a-t-il une idée..?

Le code ci-dessous

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
Function weighted_average_net_price(valcherch As Variant) As Single
Dim somme As Single
Dim sommeproduit As Single
Dim boucle As Long
somme = 0
sommeproduit = 0
 
For boucle = 3 To 9069
If Cells(boucle, 25).Value = valcherch Then
    somme = somme + Cells(boucle, 23).Value
    sommeproduit = sommeproduit + Cells(boucle, 23).Value * Cells(boucle, 21).Value
End If
Next boucle
 
weighted_average_net_price = sommeproduit / somme
 
End Function