Total selon couleur

Lebobib1

XLDnaute Nouveau
Bonjour à tous

j'ai cherché dans le forum et j'ai trouvé des réponses à ma question "comment faire le total de cellules selon leur couleur de fond", mais je merdoie lamentablement à le transposer à mon cas, je vous join s donc le fichier qui me pose pb, à savoir : en d45, la somme des cellules de la colonne D qui sont de la couleur de fond de e45, et en d46 pareil mais pour la couleur de fond de e46.

Merci d'avance de votre indulgence,

lebobib1
 

Pièces jointes

  • Couleur.zip
    17.3 KB · Affichages: 47
  • Couleur.zip
    17.3 KB · Affichages: 44
  • Couleur.zip
    17.3 KB · Affichages: 44

matthieu33

XLDnaute Occasionnel
Re : Total selon couleur

Bonsoir Lebobib1,

Voici la correction de la fonction "CompteCouleur" :

Code:
Function CompteCouleur(champ As Range, couleurFond)
    Application.Volatile
    
    Dim C, temp
    temp = 0
    For Each C In champ
        If IsNumeric(C) And C.Interior.ColorIndex = couleurFond.Interior.ColorIndex Then
          temp = temp + C.Value
        End If
    Next C
    CompteCouleur = temp
End Function
 

matthieu33

XLDnaute Occasionnel
Re : Total selon couleur

Bonsoir Lebobib1,

Voici l'explication :
Dans ton code, tu avais ceci :
Code:
C.Interior.ColorIndex = couleurFond

La variable "couleurFond" correspond soit à la cellule E45 soit à la cellule E46.
La variable "couleurFond" écrite comme ci-dessus équivaut à la valeur de la cellule E45 ou E46 (respectivement "pas refusés" ou "refusés").
Or, tu cherches à comparer le fond de la couleur de la variable "couleurFond" avec le fond de la couleur de la plage de cellules.
C'est pour cela que j'ai mis :
Code:
C.Interior.ColorIndex = couleurFond.Interior.ColorIndex
 

CHALET53

XLDnaute Barbatruc
Re : Total selon couleur

Bonjour,

Ce type de fonction m'intéresse beaucoup : merci

Toutefois, une interrogation : si je veux copier une cellule (ou son format). Pas de problème pour faire le copier, par contre le renvoi dans une autre cellule pour le "coller". Impossible :eek:ù est l'astuce ?

merci
 

matthieu33

XLDnaute Occasionnel
Re : Total selon couleur

Bonsoir Chalet53,

Dans la feuille 2007, on trouve le code ci-dessous :
Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Calculate
End Sub

A chaque sélection d'une cellule dans la feuille 2007, les cellules sont recalculées pour permettre de compter le nombre de cellules de couleurs.
La méthode Calculate annule la copie d'une cellule.
Par conséquent, soit tu mets le code en commentaire pour te permettre de copier et tu appuies sur F9 pour recalculer les cellules, soit tu laisses ce code et il faut trouver un autre moyen pour copier les valeurs.
 

Discussions similaires

Statistiques des forums

Discussions
312 493
Messages
2 088 955
Membres
103 989
dernier inscrit
jralonso