SUm if en fonction de la couleur de la cellule

Bonjour !

J'essaie d'utiliser la fonction SumIf dans le contexte suivant :

Dans la colonne S, je recherche les cellules coloriées en blanc.

Et j'additionne toutes les valeurs de la colonne AD (des lignes précédemment identifiées car coloriée en blanc en S) de AD6 à AD50.

La somme doit apparaitre en dessous, c'est à dire dans la cellule AD51.

Voici donc le code :

Sub Sum()

Range("AD51").Value = WorksheetFunction.SumIf(Range("S6:S50"), "Interior.ColorIndex = 2", Range("AD6:AD50"))

End Sub

Mais la somme donne toujours 0, y a t-il un problème dans ma formule ?

Merci par avance !

function sommecoul(r1 as range, couleur as range) as double
For each ce in r1
if ce.interior.colorindex = couleur.interior.colorindex then
sommecoul = sommecoul+ce.value
end if
next ce
end function

Supposons que tu veux sommer toutes les valeurs de la colonne A qui ont une couleur identique à la cellule B1

Utilises cette fonction:

=sommecoul(A:A;B1)

Désolée mais je ne suis pas sûre de bien comprendre, je débute sur VBA.

J'avais regardé la fonction sum if mais les cellules à aditionner ne sont pas dans la même colonne que celle ou se trouve les couleurs, du coup je suis un peu perdue ...

Tu copies colles la fonction dans un module.

Puis après tu utilises cette fonction

=sommecoul(Range contenant toutes les cellules que tu veux additionner;Range de la couleur que tu veux aditionner)

Par exemple si A1 est rouge

Et que tu veux toutes les cellules rouge de A1:I140

=sommecoul(A1:I140;A1)

Bonjour,

les couleurs de tes cellules viennent-elles d'une MEFC ?

Rechercher des sujets similaires à "sum fonction couleur"