Comptage de cellules en fonction de plusieurs couleurs

Bonjour à tous,

Je suis actuellement en stage ingénieur et il s'avère que je dois optimiser un planning excel (2007).

Mon problème est que je dois comptabiliser les remplacements de plusieurs équipes.

Mon critère de comptabilité est la couleur, cependant j'aimerais avoir plusieurs couleurs de critère.

J'utilise cette fonction mais qui se limite à une seule couleur malheureusement..

Function CompteCouleurFond2(champ As Range, couleurfond As Range)

Application.Volatile

Dim c, temp

temp = 0

cf = couleurfond.Interior.Color

For Each c In champ

If c.Interior.Color = cf Then

temp = temp + 1

End If

Next c

CompteCouleurFond2 = temp

End Function

Quelqu'un aurait la réponse à mon problème ? svp

Bien cordialement,

Pierre-Antoine

PS : Je ne peux joindre un fichier excel car l'entreprise en question ne l'autorise pas.

Bonjour,

cf PJ

Ceuzin

Bonjour Ceuzin,

Merci pour ta réponse.

En fait, il me faudrait une seule fonction qui puisse, sur une plage donnée, comptabiliser dans une autre cellule le nombre de remplacements.

Ces remplacements correspondant à plusieurs couleurs différentes pour un même employé.

Donc plusieurs couleurs de référence pour un résultat.

Si on prend la photo donnée, disons que le gris et le jaune correspondent a des remplacements.

Je souhaiterais donc comptabiliser sur la ligne de l'employé B le nombre de remplacement qu'il a effectué cette semaine là.

J'ai donc 2 couleurs de références aux remplacement.

Tu comprends mon problème ?

planning v3

Bonjour,

Function NBCOULEURS(plage As Range, cc As Range) As Integer
    Dim clr(), n%, i%, c As Range
    Application.Volatile
    ReDim clr(cc.Cells.Count - 1): i = -1
    For Each c In cc.Cells
        i = i + 1: clr(i) = c.Interior.Color
    Next c
    For Each c In plage
        For i = 0 To UBound(clr)
            If c.Interior.Color = clr(i) Then
                n = n + 1: Exit For
            End If
        Next i
    Next c
    NBCOULEURS = n
End Function

plage = la plage à dénombrer ; cc = la plage de cellules comportant les couleurs à prendre en compte.

Exemples d'utilisation :

=NBCOULEURS(A1:B100;D1:F1) => les couleurs à prendre en compte sont en D1, E1, F1

=NBCOULEURS(A1:B100;(D1;F1)) => les couleurs à prendre en compte sont en D1 et F1 (plage discontinue à mettre entre parenthèses, comme de règle dans Excel)

=NBCOULEURS(A1:B100;(D1:E1;G1)) => les couleurs à prendre en compte sont en D1, E1 et G1 (également plage discontinue...)

Cordialement.

Bonjour MFerrand,

Un grand merci ! Cela fonctionne du tonnerre.

Bien cordialement.

Rechercher des sujets similaires à "comptage fonction couleurs"