Nombre de cellules de couleurs différentes dans une plage

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Magic_Doctor

XLDnaute Barbatruc
Supporter XLD
Bonjour à tous,

J'ai une plage nommée "zaza" qui contient, évidemment, une certain nombre de cellules. Certaines de ces cellules ont des couleurs différentes.
Comment connaître le nombre total de différentes couleurs dans cette plage ?

Merci pour le coup de main.
 
Re : Nombre de cellules de couleurs différentes dans une plage

Bonjour JCGL,

En fait ce que je recherche ne correspond pas vraiment à la fonction de JB.
Peut-être me suis-je mal exprimé.
J'ai une plage de cellules, supposons A1:A25 (soit 25 cellules).
Dans cette plage il y a, supposons, 10 cellules bleues, 3 cellules jaunes, 6 cellules vertes, 5 cellues rouges et 1 cellule orange.
Évidemment, les couleurs de ces cellules ne se suivent pas forcément (il peut très bien y avoir une seule cellule verte au milieu des cellules bleues ; tous les cas de figures peuvent être donc envisagés).
Au total j'ai donc 5 couleurs différentes (bleu, jaune, vert, rouge et orange).
C'est ce chiffre 5 que je voudrais récupérer.
 
Re : Nombre de cellules de couleurs différentes dans une plage

Bonsoir Magic Doctor, JC 🙂

Nombre de couleurs différentes des cellules d'une plage par cette fonction :

Code:
Function NBCOUL(plage As Range)
Dim d As Object, cel As Range, coul
Set d = CreateObject("Scripting.Dictionary")
For Each cel In plage
 coul = cel.Interior.ColorIndex
 If coul <> xlNone Then d(coul) = coul
Next
NBCOUL = d.Count
End Function
Dans une cellule on peut écrire =NBCOUL(zaza)

Dans une macro on utilisera NBCOUL([zaza])

A+
 
Re : Nombre de cellules de couleurs différentes dans une plage

Re,

Si la fonction est surtout utilisée dans une feuille de calcul, il vaut mieux la rendre volatile :

Code:
Function NBCOUL(plage As Range)
Dim d As Object, cel As Range, coul
Application.Volatile
'----
Mais si l'on ajoute une couleur, il faudra quand même forcer le recalcul par la touche F9.

A+
 
Re : Nombre de cellules de couleurs différentes dans une plage

Bonsoir job,

Encore une fois merci. Tu m'auras initié à 2 mots magiques "Evaluate" et, avec BOIGONTIER, à l'énigmatique "Scripting.Dictionary" dont je n'ai pas encore saisi toute la quintessence. Depuis j'évalue ma belle-mère et j'essaie de la mettre dans un dictionnaire.


natorp bonsoir, je vais maintenant aller au lien que tu as joint. BOISGONTIER c'est toujours intéressant.

Bonne soirée à tous.
 
Re : Nombre de cellules de couleurs différentes dans une plage

job,

Quand je vois volatile, je ne sais pas pourquoi, mais ça me rappelle cette affreuse chanson italienne "Volaaaare...."
Bref, je me suis toulours demandé quelle était la signification de volatile. C'est pour moi shakespearien "volatile or not volatile"... un vrai dilemme !
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
11
Affichages
361
Retour