Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 NB de valeur en rouge ou vert

Scorpio

XLDnaute Impliqué
Bonjour à tous,
Dans ce classeur, en plage jaune, je cherche comment trouver
le nombre de valeur en Rouge ou en vert, par colonne de la cellule B2:B9, etc... sur la droite

J'ai fait la somme en fonction de la colonne "O" =SOMME.SI($O$2:$O$9;"*F1";B$2:B$9)

Pourriez-vous, s'il vous plaît me donner un petit coup de pouce ce soucis
Je vous remercie, et a +++++
 

Pièces jointes

  • TEST_NB_ValeurCouleur.xlsm
    20.6 KB · Affichages: 18

job75

XLDnaute Barbatruc
Bonsoir Scorpio, le fil,
Donc, je vais chercher sur le net si je trouve quelques chose, un code en VBA.
Cette fonction VBA est très classique :
VB:
Function CompteCouleur(r As Range, coul)
coul = coul.Font.Color 'couleur de la police de la cellule coul
For Each r In r
    CompteCouleur = CompteCouleur - (r.Font.Color = coul)
Next
End Function
Formule en B66 à tirer à droite et vers le bas =CompteCouleur(B$2:B$62;$A63)

Rappelons qu'en VBA True = -1 et False = 0.

A+
 

Pièces jointes

  • PayementFacture(1).xlsm
    61.1 KB · Affichages: 6

soan

XLDnaute Barbatruc
Inactif
@Scorpio (bonsoir job75)

1) je te propose de faire ce petit test avec le fichier de ton post #11 :

a) va en B21 et efface le contenu : touche Suppression ➯ un #REF! rouge en moins.

b) va en B53 et efface le contenu : touche Suppression ➯ un #REF! vert en moins.

c) regarde B66 et B67 : c'est maintenant 2 et 15 au lieu de 3 et 16 ; c'est bien la preuve que les #REF! rouges et les #REF! verts sont décomptés correctement ; et ça serait pareil dans ton fichier réel où tu as des nombres au lieu des valeurs d'erreur #REF!

mais peut-être : est-ce que tu as voulu dire que dans ton fichier réel tu as des nombres et aussi des valeurs #REF! et ce que tu cherches à faire est de compter uniquement les #REF! ? si c'est ça, alors oui, il faut modifier les formules actuelles ; mais sinon, tu peux les laisser telles quelles.​



dans ton post #13, tu as écrit :
«
C'est dans les colonnes B à M que j'aimerais savoir combien j'ai de références en rouge et en vert.

Mais dans mon classeur qui a les bonnes données, donc les chiffres, cela donne aussi 3 et 16.
»
alors si c'est pas 3 et 16, quelles sont les valeurs que tu aurais aimé avoir comme résultat ? peux-tu mettre une copie d'écran des résultats attendus ? cela en feuille "SynthèseMois", plage B66:N67 (remarque : c'est bien à cet endroit, n'est-ce pas ? ou j'me suis trompé et c'est à un autre endroit ?).​



voici quelques infos supplémentaires : les formules Excel ne détectent pas la couleur ; il faut créer en VBA une fonction spéciale qui compte les cellules colorées, comme l'a fait job75 dans son post #16 ; mais si j'me rappelle bien, en cas de changement de couleur (ce qui n'est pas détectable par un évènement), le résultat ne sera pas mis à jour. (et il me semble bien que c'est pareil même en utilisant l'instruction Application.Volatile)

soan
 

job75

XLDnaute Barbatruc
En rendant la fonction volatile comme ceci :
VB:
Function CompteCouleur(r As Range, coul)
Application.Volatile
coul = coul.Font.Color 'couleur de la police de la cellule coul
For Each r In r
    CompteCouleur = CompteCouleur - (r.Font.Color = coul)
Next
End Function
il suffira d'appuyer sur la touche F9 pour que les formules soient recalculées et donc mises à jour.
 

Scorpio

XLDnaute Impliqué
Tout d'abord, je remercie de l'aide apportée par job75, salut job75.
Ensuite,
Salut soan, voici ce que tu a demandé, une image de mon tableau
A+++, Scorpio
 

Pièces jointes

  • TableauPayementPhoto.xlsm
    34.5 KB · Affichages: 7

soan

XLDnaute Barbatruc
Inactif
Bonjour @Scorpio, job75,

j'ai vu la photo du fichier joint de ton post #19.

ben c'est tout bon, tout est ok :

1) y'a aucune valeur d'erreur #REF!

2)
par rapport à un F1 rouge de la colonne O :
tous les nombres sur la même ligne sont rouges
➯ on peut compter selon les F1 de la colonne O

3)
par rapport à un V1 vert de la colonne O :
tous les nombres sur la même ligne sont verts
➯ on peut compter selon les V1 de la colonne O

4)
tous les résultats des 2 lignes sur fond jaune sont OK !
(tu vois bien que ça ne met pas à chaque fois 3 et 16 !)



par contre, si pour toi un des résultats n'est pas bon : au lieu d'une image, envoie le fichier avec lequel tu as fait cette image (sans donnée confidentielles) ; indique quels sont les mauvais résultats, en écrivant par exemple : en B67, il y a 16 au lieu de 12 ; donc je saurai que le résultat que tu attends en B67 est 12.​

soan
 

Scorpio

XLDnaute Impliqué
Je ne veux pas savoir le nombre de cellule rouge et verte de la colonne "O", je sais qu'il y a 3 cellules rouges et 16 verte.
Sur l'image, je viens de mettre sur le fond jaune les résultats de chaque colonne de A à M, ce que je veux savoir, c'est le nombre de chiffre en rouge et en vert de chaque colonne de A à M
Scorpio
 

soan

XLDnaute Barbatruc
Inactif
@Scorpio

encore une fois, tu fais la même erreur !

même si on compte par rapport à la colonne O, le décompte est quand même VALABLE pour les colonnes B à M, car : relis très attentivement les points 2) et 3) de mon post #20 !

sur ta photo, colonne "Mai", qui est la colonne F, je vois ces 3 nombres rouges : 50.00 ; 1440.00 ; 39.95 ; je vois aussi ces 2 nombres verts : 80.00 et 1.00 ; en bas, les résultats sur fond jaune de la même colonne sont : 3 et 2 ; alors ces résultats sont bien justes, n'est-ce pas ? tu ne peux pas dire qu'ils sont faux ! (même si les formules font un décompte de la colonne F par rapport à la colonne O)


maintenant, si tu trouves qu'un des résultats est faux, dis-moi dans quelle cellule il est, et le nombre que tu aimerais y voir à la place de celui qui y est déjà ; mais pour cela, envoie la même photo avec aussi les lettres de colonnes et les numéros de lignes (je parle de ceux qui correspondent à la photo) ; ou mieux : envoie un fichier sans photo, avec les données dans des cellules.​



la colonne A n'est pas concernée car c'est la colonne avec l'en-tête "Fact. ouverte", qui contient "Soc1", "Soc2", "Soc3" ... "Soc59".​

soan
 

soan

XLDnaute Barbatruc
Inactif
??? ben pour la colonne "Mai" c'est les formules que je t'avais déjà indiquées :

en F66 : =NB.SI.ENS(F2:F62;"<>";$O2:$O62;"F1")

en F67 : =NB.SI.ENS(F2:F62;"<>";$O2:$O62;"V1")

avec ces formules, tu vois bien que ça fait un décompte de la colonne F :
si la cellule en F est non vide ; et selon que la cellule en O contient
soit "F1" (pour les nombres rouges) ; soit "V1" (pour les nombres verts)



mais t'as pas besoin de saisir ces formules en colonne F !

puisque normalement, tu saisis :
en B66 : =NB.SI.ENS(B2:B62;"<>";$O2:$O62;"F1")

en B67 : =NB.SI.ENS(B2:B62;"<>";$O2:$O62;"V1")

puis ensuite, tu tires ces 2 formules vers la droite.
(jusqu'en colonne N)


soan
 
Dernière édition:

Scorpio

XLDnaute Impliqué
OK,
Alors chez moi, cela donne que des 3 avec cette formule =NB.SI.ENS(F2:F62;"<>";$O2:$O62;"F1")
Et
Avec cette formule que des 16 =NB.SI.ENS(F2:F62;"<>";$O2:$O62;"V1")
Donc c'est pas ce que je cherche.
 

soan

XLDnaute Barbatruc
Inactif
@Scorpio

les formules sont correctes, alors si tu as que des 3 et des 16, c'est que pour chaque colonne B à N, tu as 3 nombres rouges et 16 nombres verts ; ce qui est bien le cas pour ton fichier "PayementFactureCopie" ; par contre, sur la photo du fichier "TableauPayementPhoto" de ton post #19, c'est différent ; alors j'ai bien l'impression que tu te trompes de fichier !

si tu veux que je t'aide davantage, fais comme je t'ai demandé : a) envoie-moi un fichier sans données confidentielles et sans photo ; b) indique-moi dans quelles cellules tu as des résultats faux ; et pour chacune de ces cellules, quel est le nombre que tu voudrais voir à la place de celui qui y est déjà.​

soan
 

Discussions similaires

Réponses
7
Affichages
191
Réponses
2
Affichages
272
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…