✅ Calcul de cellules de couleur contenant du texte


#1

Bonjour,

J’ai trouvé plusieurs formules à copier dans l’éditeur BVA concernant le calcule de cellules de couleur. Aucune n’a l’air de correspondre à ma recherche.

Je cherche à compter le nombre de cellule de couleur (X) (jusqu’ici tous va bien) contenant du texte, sans tenir compte de ce texte. Est-ce possible ?

Merci


#2

Bonjour
Pour savoir si une cellule est vide, tu peux utiliser la formule:
=A2=""
Du coup cette formule renvoie FAUX si la cellule contient du texte

Ensuite tu veux compter des cellules vérifiant 2 critères, il faut donc utiliser la fonction NB.SI.ENS()

Une exemple ci-dessous popur compter les cases jaunes non vides


#3

Bonjour Docteur,

En fait dans l’exemple que tu as pris, je cherche la formule qui peut me donner le nombre de cellules jaune de la colonne A.

Le nombre de cellules de couleur jaune quelles soient vide ou quelles contiennent du texte.

Dans ton exemple : (A4) (A8) (A10) remplisse ce critère. je cherche la formule qui peu me donner le resultat de “3” jaune.

Merci pour ton attention.


#4

Dans ce cas c’est encore plus facile, il faut prendre =NB.SI.ENS(C1:C10;couleur($A$8)) soit NB.SI.ENS(plage ; couleur(cellule de la couleur cherchée))


#5

merci Docteur, je crois que je viens de comprendre.
En fait ce n’est pas possible par une formule direct.

=NB.SI.ENS(A4:A10;couleur($A$8))

En tout cas chez moi ça ne fonctionne pas, puisque je suppose que dans ton exemple la colonne “C” correspond au code couleur des cellule de la colonne “A”.

Dans mon fichier cette colonne n’existe pas. Je suppose que je dois la créer si je veux faire fonctionner cette formule.
Je vais chercher comment faire apparaitre cette colonne.


#6

En fait pour cela tu peux améliorer la fonction Couleur et définir une fonction NBCouleur qui compte dans une plage donnée le nombre de cellules d’une couleur choisie:

Function NBCouleur(ByRef Plage As Range, Couleur As Long) As Long
    Dim c As Range
    Dim nb As Long
    nb = 0
    For Each c In Plage
        If c.Interior.ColorIndex = Couleur Then
            nb = nb + 1
        End If
    Next c
    NBCouleur = nb
End Function

Tu peux du coup combiner les 2 formules en une seule

nbcouleur.xlsm (14,3 Ko)


#7

J’ai copié le code dans le module 1 de la BVA, mais lorsque je rentre la formule :

=Couleur(cellule X) ça me donne #NOM?


#8

Salut Docteur,

J’ai repris le code de ton tuto sur “couleurs des cellules”

et ajouté la fonction NB.SI comme tu l’indiqué.

J’ai caché la colonne de code couleur qui ne m’intérressé pas et tout fonctionne très bien.

Désolé pour la lenteur de compréhention et merci pour ta patience et ton écoute.

A la prochaine.

PS : Je ne trouve pas l’icone de résolution de problème, mais pour moi c’est résolu


#9

Oui il faut également définir la fonction couleur, je pensais que tu l’avais déjà mais elle devait manquer vu que tu as obtenu un #NOM (Erreur de fonction non définie)

Le code est dispo dans ce tuto:


#10

Un message a été déplacé vers un nouveau sujet : Utiliser plusieurs critères via la fonction nbcouleur comme pour la fonction nb.si.ens