Je cherche à comptabiliser le nombre de cellules sans remplissage couleur (et non de couleur blanche) dans une plage définie comme suit :
Traiter toutes les lignes où A est non vide
-A partir de la ligne 2
-A partir de la colonne D
Dans cette plage le traitement n' est réalisé que si la valeur de la ligne 1 n'est pas vide.
La macro renvoi dans la colonne C et pour chaque ligne traitée le nombre de cellules "incolores"
Ex
C2 = nb de cellules incolores à partir de D2 et pour toutes les colonnes à droite pour lesquelle les cellules de la ligne 1 ne sont pas vides : soit de D2 à BK2
C3 = nb de cellules incolores à partir de D3 et pour toutes les colonnes à droite pour lesquelle les cellules de la ligne 1 ne sont pas vides : soit de D3 à BK3
Je mets un fichier en PJ.
J'ai trouvé pas mals de fils sur le sujet mais surtout pour des cellules colorées. De plus ma définition des plages traitées dépasse mon petit niveau de connaisance des manipulations VBA.
Je vous remercie d'avance pour votre aide
Cordialement
Re : Dénombrer des cellules sans couleur de remplissage sous conditions
Bonjour,
Code:
Function CompteSansCouleur(champ As Range)
Application.Volatile
Dim c, temp
temp = 0
For Each c In champ
If c.Interior.ColorIndex = xlNone Then
temp = temp + 1
End If
Next c
CompteSansCouleur = temp
End Function
Re : Dénombrer des cellules sans couleur de remplissage sous conditions
Bonjour et merci Boisgontier
J'ai essayé d'adapter ta proposition pour faire une balayage de la plage car je ne vais pas utiliser la méthode Worksheet_SelectionChange.
J'ai donc enregistré ta formule et l'ai jouté à mon code mais je me retrouve avec une erreur 400 dont je ne sais que faire.
Sub test()
With Range(Cells(c, "C"), Cells(lig, "C")).Resize(, 1)
FormulaR1C1 = "=CompteSansCouleur(RC[1]:RC[60])"
Calculate
.Value = .Value