Microsoft 365 Compter le nombre de cellule colorié selon une critère date

Abdoul aziz

XLDnaute Junior
Bonjour à Tous quelqu'un pourrait il m'aider

Je souhaite écrire une fonction ou formule qui me compte le nombre de cellule colorié en bleu (FEUIL 1 COLONNE A) et qui prends en compte les dates de la colonne B
EXEMPLE POUR LE MOIS DE JANVIER ; il va me compter le nombre de cellule colorié en bleu et dont les valeurs de la colonne B sont compris entre le 01/01/2022 et le 31/01/2022
ainsi de suite pour le mois de février.

les résultats seront mis dans ma feuil sheet1 (COLONE B)
merci
 

Pièces jointes

  • fi.xlsx
    14.8 KB · Affichages: 6
Solution
Bonjour Abdoul aziz, st007,JHA, le forum

Une proposition avec une fonction personnalisée Vba, elle compte dans les codes de la colonne mise en premier paramètre les couleurs correspondant à la couleur de fond du mois de sheet1 passé en deuxième paramètre et dont le texte du mois de feuil1 correspond au mois de sheet1.

Bien cordialement, @+
1647521104932.png

VB:
Option Compare Text
Function Nbr_Couleurs_Mois(Cells_Code As Range, Mois_Ref As Range)
Dim Cel_Ref As Range, Nbr_Couleurs&
For Each Cel_Ref In Cells_Code
    If Cel_Ref.Interior.Color = Mois_Ref.Interior.Color And Mois_Ref.Value2 = Format(Cel_Ref.Offset(0, 1).Value, "mmmm") Then Nbr_Couleurs = Nbr_Couleurs + 1
Next Cel_Ref
Nbr_Couleurs_Mois = Nbr_Couleurs
End Function

JHA

XLDnaute Barbatruc
Bonjour à tous,

Tu peux filtrer les couleurs de la colonne "A" et/ou "B" puis mettre cette formule dans l'onglet "Sheet1" en cellule "B2"
VB:
=SOMMEPROD((SOUS.TOTAL(3;DECALER(Feuil1!$B$1;LIGNE(Feuil1!$2:$130);)))*(MOIS(Feuil1!$B$2:$B$130)=LIGNE()-1))
copier vers le bas

JHA
 

Pièces jointes

  • fi.xlsx
    16.4 KB · Affichages: 4

Abdoul aziz

XLDnaute Junior
Bonjour à tous,

Tu peux filtrer les couleurs de la colonne "A" et/ou "B" puis mettre cette formule dans l'onglet "Sheet1" en cellule "B2"
VB:
=SOMMEPROD((SOUS.TOTAL(3;DECALER(Feuil1!$B$1;LIGNE(Feuil1!$2:$130);)))*(MOIS(Feuil1!$B$2:$B$130)=LIGNE()-1))
copier vers le bas

JHA
Bonjour JHA
C’est il possible de le sans filtre
Par ce que je dois faire après un TDC
Donc sans filtre pour que ça soit automatique
 

Bernard_XLD

XLDnaute Barbatruc
Membre du Staff
Bonjour Abdoul aziz, st007,JHA, le forum

Une proposition avec une fonction personnalisée Vba, elle compte dans les codes de la colonne mise en premier paramètre les couleurs correspondant à la couleur de fond du mois de sheet1 passé en deuxième paramètre et dont le texte du mois de feuil1 correspond au mois de sheet1.

Bien cordialement, @+
1647521104932.png

VB:
Option Compare Text
Function Nbr_Couleurs_Mois(Cells_Code As Range, Mois_Ref As Range)
Dim Cel_Ref As Range, Nbr_Couleurs&
For Each Cel_Ref In Cells_Code
    If Cel_Ref.Interior.Color = Mois_Ref.Interior.Color And Mois_Ref.Value2 = Format(Cel_Ref.Offset(0, 1).Value, "mmmm") Then Nbr_Couleurs = Nbr_Couleurs + 1
Next Cel_Ref
Nbr_Couleurs_Mois = Nbr_Couleurs
End Function
 

Pièces jointes

  • exemple fi.xlsm
    21.7 KB · Affichages: 6

Abdoul aziz

XLDnaute Junior
Bonjour Abdoul aziz, st007,JHA, le forum

Une proposition avec une fonction personnalisée Vba, elle compte dans les codes de la colonne mise en premier paramètre les couleurs correspondant à la couleur de fond du mois de sheet1 passé en deuxième paramètre et dont le texte du mois de feuil1 correspond au mois de sheet1.

Bien cordialement, @+
Regarde la pièce jointe 1134021
VB:
Option Compare Text
Function Nbr_Couleurs_Mois(Cells_Code As Range, Mois_Ref As Range)
Dim Cel_Ref As Range, Nbr_Couleurs&
For Each Cel_Ref In Cells_Code
    If Cel_Ref.Interior.Color = Mois_Ref.Interior.Color And Mois_Ref.Value2 = Format(Cel_Ref.Offset(0, 1).Value, "mmmm") Then Nbr_Couleurs = Nbr_Couleurs + 1
Next Cel_Ref
Nbr_Couleurs_Mois = Nbr_Couleurs
End Function
merci ça a l'air de fonctionner je vais tester
 

Discussions similaires

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 105
Messages
2 085 350
Membres
102 870
dernier inscrit
Armisa