XL 2013 Compter couleurs MFC (mise en forme conditionnelle)

  • Initiateur de la discussion Initiateur de la discussion apnart
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

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.
 
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

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é 😳

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 ! 🙂
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
19
Affichages
898
Réponses
0
Affichages
515
Retour