Compter nombre de cases d'1 couleur selon couleur case adjacente
Fermé
Julie
-
28 mars 2017 à 16:42
JvDo Messages postés 1978 Date d'inscription mercredi 27 juillet 2005 Statut Membre Dernière intervention 28 septembre 2020 - 29 mars 2017 à 14:09
JvDo Messages postés 1978 Date d'inscription mercredi 27 juillet 2005 Statut Membre Dernière intervention 28 septembre 2020 - 29 mars 2017 à 14:09
A voir également:
- Compter nombre de cases d'1 couleur selon couleur case adjacente
- Excel cellule couleur si condition texte - Guide
- Somme si couleur - Guide
- Nb si couleur ne fonctionne pas ✓ - Forum Excel
- Code couleur resistance - Télécharger - Utilitaires
- Code couleur résistance - Télécharger - Vie quotidienne
3 réponses
Raymond PENTIER
Messages postés
58731
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
23 novembre 2024
17 245
28 mars 2017 à 17:33
28 mars 2017 à 17:33
Bonjour.
Les formules ne peuvent pas reconnaître et gérer les couleurs.
Tu as donc le choix entre :
Les formules ne peuvent pas reconnaître et gérer les couleurs.
Tu as donc le choix entre :
- Obtenir les couleurs à l'aide de la Mise en forme conditionnelle
- Ecrire une macro en VBA.
Bonjour,
Oui, il s'agit ici de créer une VBA.
J'ai précédemment créé les deux formules suivantes pour d'autres calculs, mais cela ne me permets pas de résoudre mon problème:
Oui, il s'agit ici de créer une VBA.
J'ai précédemment créé les deux formules suivantes pour d'autres calculs, mais cela ne me permets pas de résoudre mon problème:
Function NbColor(ByRef plage As Range, Couleur As Byte) As Long
Dim c As Range
Dim nb As Long
nb = 0
For Each c In plage
If c.Interior.ColorIndex = Couleur Then
nb = nb + 1
End If
Next c
NbColor = nb
End Function
Function NbColorSameAs(ByRef plage As Range, ByRef Cellule As Range) As Long
NbColorSameAs = NbColor(plage, Cellule.Interior.ColorIndex)
End Function
JvDo
Messages postés
1978
Date d'inscription
mercredi 27 juillet 2005
Statut
Membre
Dernière intervention
28 septembre 2020
858
Modifié le 29 mars 2017 à 14:14
Modifié le 29 mars 2017 à 14:14
Bonjour,
Ajuste ton code :
en F3, tu écriras :
cordialement
edit : en D1, j'ai mis un fond de couleur rose.
Ajuste ton code :
Function NbColor(ByRef plage As Range, Couleur As Byte, Rose As Byte) As Long Dim c As Range Dim nb As Long nb = 0 For Each c In plage If c.Interior.ColorIndex = Couleur And c.Offset(, 1).Interior.ColorIndex = Rose Then nb = nb + 1 End If Next c NbColor = nb End Function Function NbColorSameAs(ByRef plage As Range, ByRef Cellule As Range, ByRef PinkRef As Range) As Long NbColorSameAs = NbColor(plage, Cellule.Interior.ColorIndex, PinkRef.Interior.ColorIndex) End Function
en F3, tu écriras :
=NbColorSameAs($A$1:$A$12;D3;$D$1)
cordialement
edit : en D1, j'ai mis un fond de couleur rose.