Somme conditionnelle

Résolu
fikriiii Messages postés 27 Date d'inscription mardi 10 avril 2007 Statut Membre Dernière intervention 11 mai 2007 - 26 avril 2007 à 09:36
cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 - 26 avril 2007 à 23:05
Bonjour,


Quelqu'un sait-il comment sommer l'ensemble des valeurs contenues dans les cellules d'une colonne X, à la condition que ces cellules soient de couleurs rouge par exemple?
D'avance merci.


Voici un début de tentative:


Sub TotalValeurDevis()
Dim i, j, k As Integer


'je commence à partir de A7, volontairement
i = Range("A7").End(xlDown).Value



k SumIf(Range("G7:G" & i), Interior.Color 3, Range("G7:G" & i))
'la msgbox m'indique k = 0...
MsgBox k  
...


End Sub


 

3 réponses

cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 23
26 avril 2007 à 12:08
Tu dois boucler toutes les cellules et vérifier chacune d'elles. Je ne pense pas que tu puisses faire autrement (?)

For i = 2 to nbLignes
If range("G" & i).interior.color = 3 then
k = k + 1
end if
next
msgbox k

MPi
3
fikriiii Messages postés 27 Date d'inscription mardi 10 avril 2007 Statut Membre Dernière intervention 11 mai 2007
26 avril 2007 à 13:22
dis moi sais-tu comment utiliser, SumIf?
Sinon merci pour ta réponse!
0
cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 23
26 avril 2007 à 23:05
SumIf est l'équivalent de SOMME.SI(Range1; critère; Range2)
donc, vérification de Range1 par rapport au critère et donne la somme de Range2 si le critère est rempli. Range1 et Range2 peuvent être identiques

Mais dans ton cas, tu veux vérifier des couleurs, ce qui n'entre pas dans le choix des critères possibles... Les critères sont mathématiques ("=1" ou ">=35") ou textuels ("=A" ou "<>Tout un texte"), mais pas graphiques...

MPi
0
Rejoignez-nous