XL 2013 Compter couleurs MFC (mise en forme conditionnelle)

apnart

XLDnaute Occasionnel
Bonjour,

J'utilise depuis longtemps une fonction (probablement issue d'ici) qui compte les cellules de couleur en fonction d'une cellule de référence, et ça fonctionne très bien
Voici le code :
Code:
Function CompteCouleurFond(Zne As Range, CaseRef As Range) As Integer

Dim CouleurInterieure As String

    Application.Volatile True
    CompteCouleurFond = 0
    CouleurInterieure = CaseRef.Interior.ColorIndex

    For Each cell In Zne
       If cell.Interior.ColorIndex = CouleurInterieure Then CompteCouleurFond = CompteCouleurFond + 1
    Next cell

End Function

Je voudrais maintenant compter les couleurs de cellules dont la couleur a été changée par une mise en forme conditionnelle.

J'ai trouvé sur le net le code suivant permettant de trouver la valeur de la couleur MFC, ça fonctionne, mais je n'arrive pas à utiliser cela pour l'intégrer dans ma 1ère fonction.

Code:
Public Function CouleurMFC(RG As Range, Optional Mode As Byte = 0) As Variant
Dim e As Long, i As Byte, LoTest As Boolean
Dim LoMFC As FormatCondition
    Application.Volatile
    'boucle sur le nombre de condition(s)
   'Si pas de MFC .FormatConditions.Count renvoi 0
   For i = 1 To RG.FormatConditions.Count
        Set LoMFC = RG.FormatConditions(i)
        If LoMFC.Type = xlCellValue Then
        'tester le type de la formule entrée
           Select Case LoMFC.Operator
            Case xlEqual
                LoTest = RG = Evaluate(LoMFC.Formula1)
            Case xlNotEqual
                LoTest = RG <> Evaluate(LoMFC.Formula1)
            Case xlGreater
                LoTest = RG > Evaluate(LoMFC.Formula1)
            Case xlGreaterEqual
                LoTest = RG >= Evaluate(LoMFC.Formula1)
            Case xlLess
                LoTest = RG < Evaluate(LoMFC.Formula1)
            Case xlLessEqual
                LoTest = RG <= Evaluate(LoMFC.Formula1)
            Case xlNotBetween
                LoTest = (RG < Evaluate(LoMFC.Formula1) Or RG > Evaluate(LoMFC.Formula2))
            Case xlBetween
                LoTest = (RG >= Evaluate(LoMFC.Formula1)) And (RG <= Evaluate(LoMFC.Formula2))
            End Select
            If LoTest Then
                'Peu ajouter d'autre format si nécessaire,
               'comme la bordure, la police etc..
               Select Case Mode
                Case 0
                    CouleurMFC = LoMFC.Interior.ColorIndex
                Case 1
                    CouleurMFC = LoMFC.Interior.Color
                End Select
                Exit Function
            End If
        End If
    Next i
    CouleurMFC = xlNone
End Function

Si vous aviez le p'tit coup de pouce qui va bien pour dénouer mon soucis, ça serait super !

Merci d'avance,
Bruno.
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonjour apnart,
Compter couleurs associées des règles

dans l'exemple donné par la pomme, il a mis 3 règles, j'aimerais compter combien il y en a pour chaque couleur et non pas un total

Une tentative pour compter les cellules répondant à chaque condition de la MFC (ou à plusieurs conditions si ces dernières affectent la même couleur de fond !)
 

Pièces jointes

  • apnart- compter MFC- v2.xlsm
    40.7 KB · Affichages: 98

apnart

XLDnaute Occasionnel
Bonjour,

Surtout s'il ne teste pas (voire ne lit pas) les solutions proposées.

Comme indiqué, celle de mon post #10 compte distinctement les cellules ayant la même couleur que la cellule sur laquelle on fait le double-clic. C'est vraiment élémentaire mon cher Watson.

A+

Milles excuses Job75, j'avais bien lu mais effectivement pas testé :oops:

A ma décharge, ça fait 15 jours que je suis malade (sinusite aigue + tracheite, +++...) et complètement stone avec les médocs qu'on m'a donné, donc pas au top intellectuellement, je reste dans la facilité en regardant ce que d'autres ont écrit. Milles merci en tous cas pour le temps passé.


La dernière solution données par la pomme semble effectivement répondre à mes besoins, je vais me laisser un peu de temps pour avoir les idées plus claires et analyser tout ça.

Moultes merci à toutes et à tous ! :)
 

job75

XLDnaute Barbatruc
Bonjour le fil, le forum,

Un truc un peu plus psychédélique pour Excel 2007 et les versions suivantes.

Bonne journée.
 

Pièces jointes

  • Compte couleurs MFC(2).xlsx
    17.7 KB · Affichages: 85
  • Compte couleurs MFC(2 bis).xlsx
    17.6 KB · Affichages: 86

Discussions similaires

Réponses
19
Affichages
2 K

Statistiques des forums

Discussions
311 733
Messages
2 082 008
Membres
101 864
dernier inscrit
elrecruiter