Bonjour,
En général on évite d'utiliser une couleur pour ce genre de chose, on va préférer mettre en place des règles pour savoir si une valeur est conforme ou non, utiliser des mises en forme conditionnelles pour affecter la couleur rouge, et utiliser ces mêmes règles pour compter le nombre de non conformes.
Je propose tout de même une solution avec application manuelle des couleurs:
Code utilisé pour la macro:
Function f_getCouleurPlage(Plage As Range) As Variant
Dim tableau As Variant
Application.Volatile
ReDim tableau(1 To Plage.Rows.Count, 1 To Plage.Columns.Count)
For i = 1 To UBound(tableau, 1)
For j = 1 To UBound(tableau, 2)
tableau(i, j) = Plage.Cells(i, j).Interior.Color
Next j
Next i
f_getCouleurPlage = tableau
End Function
A noter que dans Excel, changer la couleur d'une cellule ne relance pas les calculs, il faut donc relancer soit même le calcul soit avec le raccourci "F9", soit en allant dans l'onglet "Formules" du ruban et en cliquant sur "Calculer Maintenant"