Utiliser WorksheetFunction avec tableau objet

Utiliser WorksheetFunction avec tableau objet - VB/VBA/VBS - Programmation

Marsh Posté le 20-04-2008 à 17:42:46    

Bonjour à tous,
J’ai créé un tableau d'objet bidimensionnel dans lequel je stocke des séries financières. Je souhaite calculer, entre autres, la moyenne géométrique de la série qui se trouve dans la deuxième colonne du tableau. Est-ce possible de passer cette colonne du tableau en paramètre à la fonction WorksheetFunction.GeoMean ? Si oui, comment ?
 
Merci par avance.  :)  

Reply

Marsh Posté le 20-04-2008 à 17:42:46   

Reply

Marsh Posté le 20-04-2008 à 19:28:58    

Passer par une feuille intermédiaire pour utiliser GeoMean
ou en adaptant à ton contexte, ici en Option Base 1


Private Function MoyGeo(ByVal Tableau) As Double
Dim Produit As Double, Geo As Double
Dim i As Integer, n As Integer
 
    Produit = 0
    n = 0
     
    For i = LBound(Tableau) To UBound(Tableau)
       If IsNumeric(Tableau(i, 2)) Then
          n = n + 1
          If i = LBound(Tableau, 2) Then
             Produit = CDbl(Tableau(i, 2))
          Else
             Produit = Produit * CDbl(Tableau(i, 2))
          End If
       End If
    Next i
 
    If n > 0 Then
       Geo = Produit ^ (1 / n)
    Else
       Geo = 0
    End If
 
    MoyGeo = Geo
End Function


Message édité par kiki29 le 21-04-2008 à 17:45:52
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed