Rapport de message :*
 

Re: compter les cellules colorées

Titre du sujet : Re: compter les cellules colorées
par jad73 le 11/01/2011 23:10:07

bonjour
Je ne comprend pas car dans mon classeur je n'ai aucune macro ni code qui correspond a cette formule.
je suis retourné  la ou j'ai trouvé cette formule et il y avait ce code ci-dessous.
Mais comment peut fonctionner cette formule dans mon classeur si il n'y a pas ce code.
merci

Function SOMMECOULEUR(Ra As Range, Coul As String) As Double
Dim IndexCoul As Long, R As Range, Som As Double
Som = 0
    Select Case UCase(Coul)
        Case "NOIR"
        IndexCoul = 1
        Case "ROUGE FONCÉ"
        IndexCoul = 9
        Case "ROUGE"
        IndexCoul = 3
        Case "ROSE"
        IndexCoul = 7
        Case "ROSE SAUMON"
        IndexCoul = 38
        Case "MARRON"
        IndexCoul = 53
        Case "ORANGE"
        IndexCoul = 46
        Case "ORANGE CLAIR"
        IndexCoul = 45
        Case "OR"
        IndexCoul = 44
        Case "BRUN"
        IndexCoul = 40
        Case "VERT OLIVE"
        IndexCoul = 52
        Case "MARRON CLAIR"
        IndexCoul = 12
        Case "CITRON VERT"
        IndexCoul = 43
        Case "JAUNE"
        IndexCoul = 6
        Case "JAUNE CLAIR"
        IndexCoul = 36
        Case "VERT FONCÉ"
        IndexCoul = 51
        Case "VERT"
        IndexCoul = 10
        Case "VERT MARIN"
        IndexCoul = 50
        Case "VERT BRILLANT"
        IndexCoul = 4
        Case "VERT CLAIR"
        IndexCoul = 35
        Case "BLEU-VERT FONCÉ"
        IndexCoul = 49
        Case "BLEU-VERT"
        IndexCoul = 14
        Case "VERT D'EAU"
        IndexCoul = 42
        Case "TURQUOISE"
        IndexCoul = 8
        Case "TURQUOISE CLAIR"
        IndexCoul = 34
        Case "BLEU FONCÉ"""
        IndexCoul = 11
        Case "BLEU"
        IndexCoul = 5
        Case "BLEU CLAIR"
        IndexCoul = 41
        Case "BLEU CIEL"
        IndexCoul = 33
        Case "BLEU MOYEN"
        IndexCoul = 37
        Case "INDIGO"
        IndexCoul = 55
        Case "BLEU GRIS"
        IndexCoul = 47
        Case "VIOLET"
        IndexCoul = 13
        Case "PRUNE"
        IndexCoul = 54
        Case "LAVANDE"
        IndexCoul = 39
        Case "GRIS80"
        IndexCoul = 56
        Case "GRIS50"
        IndexCoul = 16
        Case "GRIS40"
        IndexCoul = 48
        Case "GRIS25"
        IndexCoul = 15
        Case "BLANC"
        IndexCoul = 2
        Case "AUCUNE"
        IndexCoul = -4142
        Case Else
        SOMMECOULEUR = 0
        Exit Function
    End Select
For Each R In Ra
    If R.Interior.ColorIndex = IndexCoul Then
        Som = Som + R.Value
    End If
Next R
SOMMECOULEUR = Som
End Function

Function NOMBRECOULEUR(Ra As Range, Coul As String) As Long
Dim IndexCoul As Long, R As Range, Nombre As Long
Nombre = 0
    Select Case UCase(Coul)
        Case "NOIR"
        IndexCoul = 1
        Case "ROUGE FONCÉ"
        IndexCoul = 9
        Case "ROUGE"
        IndexCoul = 3
        Case "ROSE"
        IndexCoul = 7
        Case "ROSE SAUMON"
        IndexCoul = 38
        Case "MARRON"
        IndexCoul = 53
        Case "ORANGE"
        IndexCoul = 46
        Case "ORANGE CLAIR"
        IndexCoul = 45
        Case "OR"
        IndexCoul = 44
        Case "BRUN"
        IndexCoul = 40
        Case "VERT OLIVE"
        IndexCoul = 52
        Case "MARRON CLAIR"
        IndexCoul = 12
        Case "CITRON VERT"
        IndexCoul = 43
        Case "JAUNE"
        IndexCoul = 6
        Case "JAUNE CLAIR"
        IndexCoul = 36
        Case "VERT FONCÉ"
        IndexCoul = 51
        Case "VERT"
        IndexCoul = 10
        Case "VERT MARIN"
        IndexCoul = 50
        Case "VERT BRILLANT"
        IndexCoul = 4
        Case "VERT CLAIR"
        IndexCoul = 35
        Case "BLEU-VERT FONCÉ"
        IndexCoul = 49
        Case "BLEU-VERT"
        IndexCoul = 14
        Case "VERT D'EAU"
        IndexCoul = 42
        Case "TURQUOISE"
        IndexCoul = 8
        Case "TURQUOISE CLAIR"
        IndexCoul = 34
        Case "BLEU FONCÉ"""
        IndexCoul = 11
        Case "BLEU"
        IndexCoul = 5
        Case "BLEU CLAIR"
        IndexCoul = 41
        Case "BLEU CIEL"
        IndexCoul = 33
        Case "BLEU MOYEN"
        IndexCoul = 37
        Case "INDIGO"
        IndexCoul = 55
        Case "BLEU GRIS"
        IndexCoul = 47
        Case "VIOLET"
        IndexCoul = 13
        Case "PRUNE"
        IndexCoul = 54
        Case "LAVANDE"
        IndexCoul = 39
        Case "GRIS80"
        IndexCoul = 56
        Case "GRIS50"
        IndexCoul = 16
        Case "GRIS40"
        IndexCoul = 48
        Case "GRIS25"
        IndexCoul = 15
        Case "BLANC"
        IndexCoul = 2
        Case "AUCUNE"
        IndexCoul = -4142
        Case Else
        NOMBRECOULEUR = 0
        Exit Function
    End Select
For Each R In Ra
    If R.Interior.ColorIndex = IndexCoul Then
        Nombre = Nombre + 1
    End If
Next R
NOMBRECOULEUR = Nombre
End Function

Edité par le Webmaster pour insérer proprement le code VBA comme expliqué dans cette FAQ
Merci d'appliquer cette procédure la prochaine fois !