Microsoft 365 Compter cellule de couleur.

Anto35200

XLDnaute Occasionnel
Bonjour au forum,

Malgré les recherches sur internet, je ne trouve pas comment je peux faire pour compter le nombre de cellule de la couleur verte de mon fichier.
Je vous transmet en fichier joint le cas.

Je vous remercie à tous.
 

Pièces jointes

  • Compter cellule couleur..xlsx
    10 KB · Affichages: 6

Nicolas JACQUIN

XLDnaute Occasionnel
Supporter XLD
Bonjour,

VB:
Sub CompterCellulesEnvert()
Dim PlageTest As Range, iCell As Range
Set PlageTest = Range("A2:C24")
For Each iCell In PlageTest
    If iCell.Interior.color = RGB(146, 208, 80) Then
        CompterCellules = CompterCellules + 1
    End If
Next iCell
MsgBox "Il y a " & CompterCellules & " cellules vert."
[G28].Value = CompterCellules
End Sub

ou

VB:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim PlageTest As Range, iCell As Range
Set PlageTest = Range("A2:C24")
For Each iCell In PlageTest
    If iCell.Interior.Color = RGB(146, 208, 80) Then
        CompterCellules = CompterCellules + 1
    End If
Next iCell
MsgBox "Il y a " & CompterCellules & " cellules vert."
[G28].Value = CompterCellules
End Sub

Bonne soirée.
Nicolas
 
Dernière édition:

Anto35200

XLDnaute Occasionnel
Bonjour,
Je pensais qu'il y aurait une solution sans macros.
Pour mon cas, ç'est compliqué de créer à chaque fois une macro sur ce fichier car celui-ci a un nom variable. Ce fichier est une extraction quotidienne à partir d'un logiciel.

Je pensais donc, s'il est possible d'exécuter ce fichier à partir d'un autre fichier ?

Je voudrai lancer une macro à partir d’un fichier appelé TRAVAIL .

Macro 1 :
L’ordre des tâches de la 1er macro sera la suivante :
  • Ouvrir le fichier « EXTRACTION du 21/05/2024 » (le nom du fichier variable selon la date du jour).
  • Copier la feuille Devises dans le même fichier qui sera Devises(2)
  • Copier de la plage A1 à la colonne I jusqu’à la dernière cellule vide
  • Faire un tri personnaliser du tableau
Trier par « Montant Total Monnaie de Paiement »

Trier sur Valeur de cellule

Ordre Du plus grand au plus petit.

Macro 2 :
La 2ème macro sera de compter le nombre de cellules de couleur vertes.

Il y a un début de macros qui permet seulement d'ouvrir le fichier.

En vous remercaint de votre aide.
 

Pièces jointes

  • TRAVAIL.xlsm
    18.3 KB · Affichages: 1
  • Extraction du 21.05.2024.xlsx
    10.8 KB · Affichages: 3

Nicolas JACQUIN

XLDnaute Occasionnel
Supporter XLD
Bonjour,
A la volé, sans avoir testé

VB:
Sub CompterCellulesEnvert()
Dim PlageTest As Range, iCell As Range
With ActiveWorkbook
Set PlageTest = Range("A2:C24")
For Each iCell In PlageTest
    If iCell.Interior.color = RGB(146, 208, 80) Then
        CompterCellules = CompterCellules + 1
    End If
Next iCell
MsgBox "Il y a " & CompterCellules & " cellules vert."
[G28].Value = CompterCellules
Wnd With
End Sub

si tu mets dans n'importe quel classeur ouvert au même moment, ça devrait fonctionner avec tous les fichiers actifs (ActiveWorkbook)
A+
Nicolas
 

laurent950

XLDnaute Accro
Bonsoir

avec cette fonction : CountColoredCells(Plage; la couleur de cette cellule va servire a trouver les couleur de cellules a trouver dans la plage)

Code:
=CountColoredCells(A2:D24;E28)

VB:
Function CountColoredCells(rng As Range, color As Range) As Long
    Dim cell As Range
    Dim count As Long
    count = 0
    For Each cell In rng
        If cell.Interior.color = color.Interior.color Then
            count = count + 1
        End If
    Next cell
    CountColoredCells = count
End Function
 

Discussions similaires

Réponses
1
Affichages
198

Statistiques des forums

Discussions
312 677
Messages
2 090 825
Membres
104 677
dernier inscrit
soufiane12