Comptage cellule de couleurs en vba
Résolu
Dautomne
Messages postés
20
Date d'inscription
Statut
Membre
Dernière intervention
-
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour à tous,
Je cherche une macro vba (comptage de cellule ) qui permette de faire ressortir la couleur majoritaire d'un ensemble de cellules.
Ex : si dans les cellules C5 à L5 j'ai 4 cellules vertes et 3 cellules bleues et 1 rouge le résultat doit être vert.
Autre question est il possible d'exclure de ce type de calcul une des couleur ?
Merci par avance pour vos idées et conseils :-)
Je cherche une macro vba (comptage de cellule ) qui permette de faire ressortir la couleur majoritaire d'un ensemble de cellules.
Ex : si dans les cellules C5 à L5 j'ai 4 cellules vertes et 3 cellules bleues et 1 rouge le résultat doit être vert.
Autre question est il possible d'exclure de ce type de calcul une des couleur ?
Merci par avance pour vos idées et conseils :-)
Configuration: Windows / Firefox 78.0
A voir également:
- Excel compter cellule couleur sans vba
- Compter ou additionner des cellules Excel colorisées - Guide
- Excel cellule couleur si condition texte - Guide
- Liste déroulante excel - Guide
- Proteger cellule excel - Guide
- Aller à la ligne dans une cellule excel - Guide
3 réponses
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
bonjour,
en général, une macro se crée, elle ne se trouve pas.
en général, une macro se crée, elle ne se trouve pas.
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
1 584
un exemple, en excluant le blanc et le gris:
Bonjour à tous les deux
Pas très clair !
Peux tu envoyer un bout de fichier sur cjoint.com et joindre le lien obtenu à ton prochain message. N'oublies pas d'y ajouter des explications et des exemples de résultat attendu
1) Tu vas dans https://www.cjoint.com/
2) Tu cliques sur [Parcourir] pour sélectionner ton fichier
3) Tu descends en bas de la page pour cliquer sur [Créer le lien Cjoint]
4) Au bout de quelques secondes la deuxième page s'affiche, avec le lien
en bleu souligné ; tu le sélectionnes et tu fais "Copier"
5) Tu reviens dans ta discussion sur CCM, et dans ton message de réponse tu fais "Coller".
Cdlmnt
Pas très clair !
Peux tu envoyer un bout de fichier sur cjoint.com et joindre le lien obtenu à ton prochain message. N'oublies pas d'y ajouter des explications et des exemples de résultat attendu
1) Tu vas dans https://www.cjoint.com/
2) Tu cliques sur [Parcourir] pour sélectionner ton fichier
3) Tu descends en bas de la page pour cliquer sur [Créer le lien Cjoint]
4) Au bout de quelques secondes la deuxième page s'affiche, avec le lien
en bleu souligné ; tu le sélectionnes et tu fais "Copier"
5) Tu reviens dans ta discussion sur CCM, et dans ton message de réponse tu fais "Coller".
Cdlmnt
Bonjour,
Merci pour ton aide.
Comme convenu, voici le lien vers le fichier https://www.cjoint.com/c/JGykzf2XKhO.
Cordialement
Merci pour ton aide.
Comme convenu, voici le lien vers le fichier https://www.cjoint.com/c/JGykzf2XKhO.
Cordialement
avant tout, il serait utile que tu expliques précisément ce que tu veux obtenir.
"faire ressortir la couleur" et "le résultat doit être vert", cela ne veut rien dire.
essaie d'être précis et concret.
"la macro communiquée par ccm81": c'est quoi et où?
prend du temps pour réfléchir et bien expliquer, peut-être en montrant un exemple du résultat attendu.
"faire ressortir la couleur" et "le résultat doit être vert", cela ne veut rien dire.
essaie d'être précis et concret.
"la macro communiquée par ccm81": c'est quoi et où?
prend du temps pour réfléchir et bien expliquer, peut-être en montrant un exemple du résultat attendu.
Pour faire simple peux-tu juste m'indiquer où je dois coller le code que m'a communiqué ccm81 pour que je puisse le tester. Je n'arrive pas à le faire fonctionner quand je le colle à ma macro n°18.
Function ccc() As Long
Dim rg As Range, cl As Range, colors As Scripting.Dictionary, col As Long, maxnb As Long, colmax As Long, koul
Set rg = Range("c5:l5")
Set colors = New Scripting.Dictionary
For Each cl In rg
col = cl.Interior.Color
Select Case col
Case vbWhite, 8421504:
Case Else:
If colors.Exists(col) Then
colors(col) = colors(col) + 1
Else
Call colors.Add(col, 1)
End If
End Select
Next cl
colmax = 0
maxnb = 0
For Each koul In colors.keys
If colors(koul) > maxnb Then
maxnb = colors(koul)
colmax = koul
End If
Next koul
ccc = colmax
End Function
Merci par avance :-)
Function ccc() As Long
Dim rg As Range, cl As Range, colors As Scripting.Dictionary, col As Long, maxnb As Long, colmax As Long, koul
Set rg = Range("c5:l5")
Set colors = New Scripting.Dictionary
For Each cl In rg
col = cl.Interior.Color
Select Case col
Case vbWhite, 8421504:
Case Else:
If colors.Exists(col) Then
colors(col) = colors(col) + 1
Else
Call colors.Add(col, 1)
End If
End Select
Next cl
colmax = 0
maxnb = 0
For Each koul In colors.keys
If colors(koul) > maxnb Then
maxnb = colors(koul)
colmax = koul
End If
Next koul
ccc = colmax
End Function
Merci par avance :-)
cela te semble certainement plus simple de ne pas prendre le temps de répondre à mes questions.
je ne pourrai cependant pas t'aider si tu n'y réponds pas.
de plus, peux-tu prendre le temps de comprendre et d'appliquer ceci: https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
je ne pourrai cependant pas t'aider si tu n'y réponds pas.
de plus, peux-tu prendre le temps de comprendre et d'appliquer ceci: https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code