La fonction sommecouleurs ne s'exécute pas correctement

13erreur-vba.zip (957.81 Ko)

Bonsoir à tous,

Je viens vers vous pour avoir votre aide concernant un souci que j'ai sur ma feuille excel.

Je suis novice et grâce aux différents messages du forum, j'ai pu résoudre une partie de mon problème pour permettre de faire des sommes selon la couleur de fond de la cellule. Cependant, j'ai tout bien fait (il me semble) mais la formule ne se fait pas correctement. Par exemple: sur la ligne 10, j'ai 2 cellules de couleur grise, je devrais donc avoir un total de 10 328 or il ne me donne que 20. Est ce que je me serai trompée dans le codage?

Function sommeCouleurs(plageC As Range, cellule As Range, Optional plageS As Variant) As Long

Application.Volatile
Dim chaquecelluleC As Range: Dim chaqueCelluleS As Range
sommeCouleurs = 0

If (IsMissing(plageS)) Then

For Each chaquecelluleC In plageC
If (chaquecelluleC.Interior.ColorIndex = cellule.Interior.ColorIndex) Then
sommeCouleurs = sommmeCouleurs + chaquecelluleC.Value
End If
Next chaquecelluleC

Else
For Each chaquecelluleC In plageC
If (chaquecelluleC.Interior.ColorIndex = cellule.Interior.ColorIndex) Then
For Each chaqueCelluleS In plageS
If (chaqueCelluleS.Row = chaquecelluleC.Row) Then
sommeCouleurs = sommmeCouleurs + chaqueCelluleS.Value
End If
Next chaqueCelluleS
End If
Next chaquecelluleC
End If
End Function

Je vous remercie par avance de votre aide et si jamais le sujet a été posé, je vous prie de m'en excuser (j'ai bien cherché avant de poster)

Kosoul

Bonjour,
Il y a des m de trop dans somme !
Cdlt.

Bonsoir Jean-Eric,

Effectivement, je n'aurai pas trouvé toute seule. Mille mercis pour l'oeil d'expert. Tout fonctionne maintenant.

Bonne nuit.

Rechercher des sujets similaires à "fonction sommecouleurs execute pas correctement"