comptage cellules coloriées

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 !

gerard55

XLDnaute Occasionnel
Bonjour à tous,
Je cherche à additionner des cellules dont l'intérieur est rempli (jaune). A partir du code ci-dessous récupérer sur ce site comment puis-je indiquer une couleur précise et une recherche par colonne avec une réponse par colonne en tête de chaque colonne
Sub Test()
For Each o In Selection
If o.Interior.ColorIndex <> xlNone Then i = i + 1
Next
MsgBox i
End Sub
Merci pour vos propositions
a+
 
Re : comptage cellules coloriées

Bonjour gerard55, le forum,

Si tu colores la cellule C1 de ta feuille, et que tu modifies le code comme suit:
VB:
Sub Test()
For Each o In Selection
If o.Interior.ColorIndex = [C1].Interior.ColorIndex Then i = i + 1
Next
MsgBox i
End Sub
la macro comptera le nombre de cellules dont la couleur de remplissage est identique à celle de C1

Pour ta question relative aux colonnes, il faudrait que tu sois plus précis ... ou, mieux encore, que tu nous déposes un exemple de ce que tu as et ce que tu voudrais.
 
Re : comptage cellules coloriées

Ce code plus élégant, se passe de la cellule C1 et te laisse choisir la couleur que tu veux dans une boite de dialogue:

Code:
Sub Test()
With ActiveCell.Interior
    ex = .ColorIndex
    Application.Dialogs(xlDialogPatterns).Show
    Couleurchoisie = .ColorIndex
    .ColorIndex = ex
End With

For Each o In Selection
If o.Interior.ColorIndex = Couleurchoisie Then i = i + 1
Next
MsgBox i
End Sub

Si tu souhaites passer par la couleur de ta cellule en tête de colonne (qui démarre en ligne 1 pour effectuer la somme des cellules coloriées dans la colonne concernée, tu peux utiliser une fonction à coller dans un module standard :
Code:
Function Chxcoul()
Application.Volatile
Set c = Application.Caller
For Each cel In Range(c(2, 1), Cells(65536, c.Column).End(xlUp))
    If cel.Interior.ColorIndex = c.Interior.ColorIndex Then Chxcoul = Chxcoul + 1
Next
c = Chxcoul
End Function

et dans la première ligne de ta feuille, tu tapes à la colonne voulue :
Code:
=chxcoul()

La formule te renverra dans cette cellule le nombre de cellules dans la colonne qui ont la même couleur de fond qu'elle
 
Dernière édition:
Re : comptage cellules coloriées

Bonjour,

je ne peux lire ton fichier car j'ai une version d'excel de 2003. Néanmoins, assure-toi de bien avoir copié le code dans un nouveau module et non dans le module de la feuille.

ALT+F11
puis Insertion...
Module

et là tu copies le code.
 
- 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
2
Affichages
526
Réponses
40
Affichages
3 K
Réponses
5
Affichages
573
Retour