CountcColor sous condition

  • Initiateur de la discussion Initiateur de la discussion Raimana
  • Date de début Date de début

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 !

Raimana

XLDnaute Nouveau
Bonjour,
J'utilise CountcColor dans le fichier ci-joint : calcul du nbre de cellule d'une certaine couleur dans une colonne regroupant des dates.
Je voudrais rajouter une condition : l'année (cellule A9) et donc limiter le nbre de cellule de telle ou telle couleur en fonction de l'année des dates inscrites dans la colonne A
Mon gourou personnel ne trouvant pas de solution, je me tourne vers vous en espérant qu'une bonne âme pourra m'aider.
Merci d'avance
 

Pièces jointes

Bonjour Raimana
Bonjour le Fil,le Forum
voilà ce que j'ai modifié et qui semble faire le Boulot.
VB:
Function CountCcolor(range_data As Range, criteria As Range) As Long
    Dim datax As Range
    Dim xcolor As Long
    Dim YearSearch As Integer   
          xcolor = criteria.Interior.ColorIndex
YearSearch = Year(Range("A9")) 'on récupére l'année de la date de la cellule "A9"
For Each datax In range_data
    If datax.Interior.ColorIndex = xcolor And Year(Cells(datax.Row, 1)) = YearSearch Then
           CountCcolor = CountCcolor + 1
    End If
Next datax
End Function
jean marie
 
Bonjour et merci pour votre aide.
Deux solutions :
- celle de M12 ci-dessus associant formule et macro:
"=CountCcolor(INDIRECT(ADRESSE(13;COLONNE();2)):INDIRECT(ADRESSE(EQUIV(DATE(ANNEE($A$9);12;31);$A$1:$A$1840;0);COLONNE();2));$A1)"

- l'autre uniquement macro :

Function CountCcolor(range_data As Range, criteria As Range, an As Range) As Long
Application.Volatile
Dim datax As Range
Dim xcolor As Long
xcolor = criteria.Interior.ColorIndex
On Error Resume Next
For Each datax In range_data
If datax.Interior.ColorIndex = xcolor And Year(Cells(datax.Row, 1)) = an Then CountCcolor = CountCcolor + 1
Next datax
End Function

Apparemment pas de grosse différence de poids du fichier avec l'une ou l'autre solution ni de vitesse de mis à jour de données
Raimana
 
- 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
28
Affichages
7 K
Retour