1. Ce site utilise des "témoins de connexion" (cookies) conformes aux textes de l'Union Européenne. Continuer à naviguer sur nos pages vaut acceptation de notre règlement en la matière. En savoir plus.

XL 2007 compter nombre de cellules écrites en rouge

Discussion dans 'Forum Excel' démarrée par libellule85, 17 Février 2017.

  1. libellule85

    libellule85 XLDnaute Accro

    Inscrit depuis le :
    24 Novembre 2010
    Messages :
    1059
    "J'aime" reçus :
    26
    Habite à:
    La Roche sur Yon (85)
    Utilise:
    Excel 2007 (PC)
    Bonjour le forum,
    Je cherche à compter le nombre de cellules écrites en rouge.
    D'avance merci pour votre aide
     

    Pièces jointes:

  2. DoubleZero

    DoubleZero XLDnaute Barbatruc

    Inscrit depuis le :
    14 Septembre 2010
    Messages :
    5479
    "J'aime" reçus :
    1135
    Utilise:
    Excel 2013 (PC)
    Bonjour, libellule85, le Forum,

    Comme ceci ?
    Code (Visual Basic):
    Option Explicit
    Sub Rouge_compter()
        Dim c As Range, compteur
        compteur = 0
        For Each c In Columns(1).SpecialCells(xlCellTypeConstants)
            If c.Font.ColorIndex = 3 Then compteur = compteur + 1
        Next
        MsgBox compteur
    End Sub
    A bientôt :)
     
  3. libellule85

    libellule85 XLDnaute Accro

    Inscrit depuis le :
    24 Novembre 2010
    Messages :
    1059
    "J'aime" reçus :
    26
    Habite à:
    La Roche sur Yon (85)
    Utilise:
    Excel 2007 (PC)
    Bonjour DoubleZero,
    Un grand grand merci pour ta réponse, c'est exactement ce que je recherchais.
    Bonne journée
     
  4. chris

    chris XLDnaute Barbatruc

    Inscrit depuis le :
    21 Février 2005
    Messages :
    9940
    "J'aime" reçus :
    465
    Habite à:
    près de Saint Quentin en Yvelines
    Utilise:
    Excel 2010 (PC)
    Bonjour à tous
    Salut les filles :)

    Une fonction aussi (pas de moi) : qui utilise une cellule de référence pour la couleur à compter
    Code (Text):
    Function NBCouleur(Plage As Range, Cellule_de_référence As Range) As Integer

    'Application.Volatile True
    NBCouleur = 0
    Macoul = Cellule_de_référence.Font.ColorIndex
    For Each cellule In Plage
        If cellule.Interior.ColorIndex = Macoul Then NBCouleur = NBCouleur + 1
    Next cellule
    End Function
     
    Edit : judicieuse remarque de Doublezero . J'ai corrigé pour une réfrence à la couleur de la poice te non du fond
     
    Dernière édition: 17 Février 2017
    DoubleZero aime votre message.
  5. libellule85

    libellule85 XLDnaute Accro

    Inscrit depuis le :
    24 Novembre 2010
    Messages :
    1059
    "J'aime" reçus :
    26
    Habite à:
    La Roche sur Yon (85)
    Utilise:
    Excel 2007 (PC)
    Bonsoir,
    Merci beaucoup pour ta réponse, mais une question : tu mets quelle formule pour activer ta fonction ??

    Edit : Oooooooooops, je n'avais pas fait attention à l'en-tête ! Effectivement, elle ne fonctionne qu'avec les cellules colorées et non la police !!
     
  6. DoubleZero

    DoubleZero XLDnaute Barbatruc

    Inscrit depuis le :
    14 Septembre 2010
    Messages :
    5479
    "J'aime" reçus :
    1135
    Utilise:
    Excel 2013 (PC)
    Re-bonjour,
    J'ai modifié la fonction de chris :) afin de prendre en compte les couleurs personnalisées.
    Code (Text):
    Option Explicit
    Function NBCouleur(Plage As Range, Cellule_de_référence As Range) As Integer
        Dim cellule As Range, Macoul
        Application.Volatile
        NBCouleur = 0
        Macoul = Cellule_de_référence.Font.Color
        For Each cellule In Plage
            If cellule.Font.Color = Macoul Then NBCouleur = NBCouleur + 1
        Next cellule
    End Function
    A bientôt :)
     

    Pièces jointes:

  7. libellule85

    libellule85 XLDnaute Accro

    Inscrit depuis le :
    24 Novembre 2010
    Messages :
    1059
    "J'aime" reçus :
    26
    Habite à:
    La Roche sur Yon (85)
    Utilise:
    Excel 2007 (PC)
    Bonsoir DoubleZero,
    Merci beaucoup
     

Partager cette page