Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

comment comptabiliser des cellules colorées

7 réponses
Avatar
joelle T
dans un tableau qui représente un planning, j'ai mis des zones colorées pour
définir les périodes. J'aimerai pouvoir comptabiliser les cellules qui sont
colorées. Comment puis-je faire sans mettre de caractère dans ces cellules.
J'ai essayé avec NB.SI mais ne trouve pas de solutions
Merci de votre aide

7 réponses

Avatar
Sarah
Pour comptabiliser des cellules colorées, je ne vois qu'une soultion rapide,
un peu de vba.
- Une variable compteur
- une variable cellule
- une sélection du tableau
- un For each par exemple pour tout parcourir et
au passage compter les cellules d'une certaine couleur.

dim i as integer
dim cellule as object
range("a1:c13").select
for each cellule in selection
if cellule.Font.ColorIndex = ??? then
i=i+1
end if
next cellule


dans un tableau qui représente un planning, j'ai mis des zones colorées pour
définir les périodes. J'aimerai pouvoir comptabiliser les cellules qui sont
colorées. Comment puis-je faire sans mettre de caractère dans ces cellules.
J'ai essayé avec NB.SI mais ne trouve pas de solutions
Merci de votre aide


Avatar
Lolote
Salut JoelleT,

Dans un module d'excel, insère le code suivant

Function CompteCouleur(Zone As Range, Couleur As String)
Application.Volatile True
Select Case Couleur
Case "Aucune": Couleur = -4142
Case "Noir": Couleur = 1
Case "Blanc": Couleur = 2
Case "Rouge": Couleur = 3
Case "Vert brillant": Couleur = 4
Case "Bleu": Couleur = 5
Case "Jaune": Couleur = 6
Case "Rose": Couleur = 7
Case "Turquoise": Couleur = 8
Case "Rouge foncé": Couleur = 9
Case "Vert": Couleur = 10
Case "Bleu foncé": Couleur = 11
Case "Marron clair": Couleur = 12
Case "Violet": Couleur = 13
Case "Bleu-vert": Couleur = 14
Case "Gris-25%": Couleur = 15
Case "Gris-50%": Couleur = 16
Case "Bleu ciel": Couleur = 33
Case "Turquoise clair": Couleur = 34
Case "Vert clair": Couleur = 35
Case "Jaune clair": Couleur = 36
Case "Bleu moyen": Couleur = 37
Case "Rose saumon": Couleur = 38
Case "Lavande": Couleur = 39
Case "Brun": Couleur = 40
Case "Bleu clair": Couleur = 41
Case "Vert d'eau": Couleur = 42
Case "Citron vert": Couleur = 43
Case "Or": Couleur = 44
Case "Orange clair": Couleur = 45
Case "Orange": Couleur = 46
Case "Bleu-gris": Couleur = 47
Case "Gris-40%": Couleur = 48
Case "Bleu-vert foncé": Couleur = 49
Case "Vert marin": Couleur = 50
Case "Vert foncé": Couleur = 51
Case "Vert olive": Couleur = 52
Case "Marron": Couleur = 53
Case "Prune": Couleur = 54
Case "Indigo": Couleur = 55
Case "Gris-80%": Couleur = 56
End Select
For Each Cell In Zone
If Cell.Interior.ColorIndex = Couleur Then
Compteur = Compteur + 1
End If
Next
CompteCouleur = Compteur
End Function

Dans une cellule tu inscrits en toute lettre la couleur désirée telle
qu'écrite plus haut dans le code
Exemple
A1 = Rouge
B1 = =CompteCouleur(C3:C23;A1)
En imaginant que ta plage de cellules soit C3:C23
Tu auras donc en B1, le nombre de cellule Rouge comprise dans C3:C23

En espérant avoir répondu a tes attentes.

@+ Lolote





"joelle T" <joelle a écrit dans le message de
news:
dans un tableau qui représente un planning, j'ai mis des zones colorées
pour
définir les périodes. J'aimerai pouvoir comptabiliser les cellules qui
sont
colorées. Comment puis-je faire sans mettre de caractère dans ces
cellules.
J'ai essayé avec NB.SI mais ne trouve pas de solutions
Merci de votre aide


Avatar
Ange Ounis
Une fonction VBA perso de 3 lignes dans un module ordinaire de ton classeur :

Function CouleurDeFond(cell)
CouleurDeFond = cell.Interior.ColorIndex
End Function

Puis :
En supposant que tes semaines ou zones colorées soient en B5:B31, en C5 saisis :

=CouleurDeFond(B5)

et recopie jusqu'en C31 (cette colonne devrait être masquée)
puis, par exemple en D5, le nombre de cellules d'une couleur donnée peut être
renvoyé par une formule comme :

=NB.SI(C5:C31;couleurdefond(B7))

Exemple de cette technique :

http://cjoint.com/?emvL0CsiJH

----------
Ange Ounis
----------

dans un tableau qui représente un planning, j'ai mis des zones colorées pour
définir les périodes. J'aimerai pouvoir comptabiliser les cellules qui sont
colorées. Comment puis-je faire sans mettre de caractère dans ces cellules.
J'ai essayé avec NB.SI mais ne trouve pas de solutions
Merci de votre aide


Avatar
joelle T
Merci de ton aide, je vais le tester



Pour comptabiliser des cellules colorées, je ne vois qu'une soultion rapide,
un peu de vba.
- Une variable compteur
- une variable cellule
- une sélection du tableau
- un For each par exemple pour tout parcourir et
au passage compter les cellules d'une certaine couleur.

dim i as integer
dim cellule as object
range("a1:c13").select
for each cellule in selection
if cellule.Font.ColorIndex = ??? then
i=i+1
end if
next cellule


dans un tableau qui représente un planning, j'ai mis des zones colorées pour
définir les périodes. J'aimerai pouvoir comptabiliser les cellules qui sont
colorées. Comment puis-je faire sans mettre de caractère dans ces cellules.
J'ai essayé avec NB.SI mais ne trouve pas de solutions
Merci de votre aide




Avatar
joelle T
Merci, je vais tester ta solution



Salut JoelleT,

Dans un module d'excel, insère le code suivant

Function CompteCouleur(Zone As Range, Couleur As String)
Application.Volatile True
Select Case Couleur
Case "Aucune": Couleur = -4142
Case "Noir": Couleur = 1
Case "Blanc": Couleur = 2
Case "Rouge": Couleur = 3
Case "Vert brillant": Couleur = 4
Case "Bleu": Couleur = 5
Case "Jaune": Couleur = 6
Case "Rose": Couleur = 7
Case "Turquoise": Couleur = 8
Case "Rouge foncé": Couleur = 9
Case "Vert": Couleur = 10
Case "Bleu foncé": Couleur = 11
Case "Marron clair": Couleur = 12
Case "Violet": Couleur = 13
Case "Bleu-vert": Couleur = 14
Case "Gris-25%": Couleur = 15
Case "Gris-50%": Couleur = 16
Case "Bleu ciel": Couleur = 33
Case "Turquoise clair": Couleur = 34
Case "Vert clair": Couleur = 35
Case "Jaune clair": Couleur = 36
Case "Bleu moyen": Couleur = 37
Case "Rose saumon": Couleur = 38
Case "Lavande": Couleur = 39
Case "Brun": Couleur = 40
Case "Bleu clair": Couleur = 41
Case "Vert d'eau": Couleur = 42
Case "Citron vert": Couleur = 43
Case "Or": Couleur = 44
Case "Orange clair": Couleur = 45
Case "Orange": Couleur = 46
Case "Bleu-gris": Couleur = 47
Case "Gris-40%": Couleur = 48
Case "Bleu-vert foncé": Couleur = 49
Case "Vert marin": Couleur = 50
Case "Vert foncé": Couleur = 51
Case "Vert olive": Couleur = 52
Case "Marron": Couleur = 53
Case "Prune": Couleur = 54
Case "Indigo": Couleur = 55
Case "Gris-80%": Couleur = 56
End Select
For Each Cell In Zone
If Cell.Interior.ColorIndex = Couleur Then
Compteur = Compteur + 1
End If
Next
CompteCouleur = Compteur
End Function

Dans une cellule tu inscrits en toute lettre la couleur désirée telle
qu'écrite plus haut dans le code
Exemple
A1 = Rouge
B1 = =CompteCouleur(C3:C23;A1)
En imaginant que ta plage de cellules soit C3:C23
Tu auras donc en B1, le nombre de cellule Rouge comprise dans C3:C23

En espérant avoir répondu a tes attentes.

@+ Lolote





"joelle T" <joelle a écrit dans le message de
news:
dans un tableau qui représente un planning, j'ai mis des zones colorées
pour
définir les périodes. J'aimerai pouvoir comptabiliser les cellules qui
sont
colorées. Comment puis-je faire sans mettre de caractère dans ces
cellules.
J'ai essayé avec NB.SI mais ne trouve pas de solutions
Merci de votre aide







Avatar
joelle T
Merci pour ton aide, je vais tester


Une fonction VBA perso de 3 lignes dans un module ordinaire de ton classeur :

Function CouleurDeFond(cell)
CouleurDeFond = cell.Interior.ColorIndex
End Function

Puis :
En supposant que tes semaines ou zones colorées soient en B5:B31, en C5 saisis :

=CouleurDeFond(B5)

et recopie jusqu'en C31 (cette colonne devrait être masquée)
puis, par exemple en D5, le nombre de cellules d'une couleur donnée peut être
renvoyé par une formule comme :

=NB.SI(C5:C31;couleurdefond(B7))

Exemple de cette technique :

http://cjoint.com/?emvL0CsiJH

----------
Ange Ounis
----------

dans un tableau qui représente un planning, j'ai mis des zones colorées pour
définir les périodes. J'aimerai pouvoir comptabiliser les cellules qui sont
colorées. Comment puis-je faire sans mettre de caractère dans ces cellules.
J'ai essayé avec NB.SI mais ne trouve pas de solutions
Merci de votre aide





Avatar
JB
Bonjour,

Planning : http://cjoint.com/?eqglZkimdr

Exemples divers:
http://www.excelabo.net/compteclic.php?nom=jb-fonctionsperso

Function SommeCouleurFond(champ As Range, couleurFond As Range)
'Application.Volatile
Dim c, temp
temp = 0
For Each c In champ
If c.Interior.ColorIndex = couleurFond.Interior.ColorIndex Then
temp = temp + c.Value
End If
Next c
SommeCouleurFond = temp
End Function

Cordialement JB