Comptage cellules en fonction de leur couleur de fond

Bonjour à tous,

Ayant parcouru bon nombre de forum je vous lance un S.O.S.

Le sujet a été traité à de nombreuses reprises, j'ai beau testé bon nombre de solutions proposées le résultat attendu n'est jamais bon.

je m'explique:

Sur 8 colonnes j'ai 8 mises en formes conditionnelles différentes.

Celles-ci colorent en rouge, bleu ou vert le fond des cellules.

J'aimerai additionner le nombre de cellule contenant un fond vert ligne par ligne.

Il s'agit de compter les cellules à fond vert de O à V pour que le résultat s'affiche dans la colonne W qui elle même sera soumise à une mise en forme conditionnelle.

J'aimerai également effectuer ce même principe de comptage pour remplir automatiquement les colonnes Q R et U V

Merci d'avance

5 jours de recherche ..en vain

Axel

Bonjour,

Même si ce que tu envisages est techniquement possible, je te conseille d'abandonner cette idée ...

Cela dit, pour arriver à ton objectif, tu n'as qu'à repartir des conditions initiales ( que tu utlises dans la MEFC) pour créer ta formule d'addition ...

Malheureusement je ne sais comment m'en sortir en repartant depuis le début étant donné qu'il y a des variable type " top 10" ...

Re,

Je ne connais pas tes formules dans les conditions des mises en forme ...

Tu peux les poster si tu veux ... Ou le fichier lui-même ...

Mais tu peux me croire, ce sera mille fois plus facile de résoudre ce problème que d'attaquer la programmation des couleurs générées par les MEFC ...

Bonsoir

En reprenant les conditions des MFC

=SI(ESTNUM(EQUIV(O2;GRANDE.VALEUR($O$2:$O$71;LIGNE($1:$10));0));1;0)+SI(ESTNUM(EQUIV(P2;GRANDE.VALEUR($P$2:$P$71;LIGNE($1:$10));0));1;0)+SI(ESTNUM(EQUIV(Q2;PETITE.VALEUR($Q$2:$Q$71;LIGNE($1:$10));0));1;0)+SI(ESTNUM(EQUIV(R2;GRANDE.VALEUR($R$2:$R$71;LIGNE($1:$10));0));1;0)+SI(ESTERREUR(S2);0;SI(S2>=3;1;0))+SI(ESTNUM(EQUIV(T2;PETITE.VALEUR($T$2:$T$71;LIGNE($1:$10));0));1;0)+SI(ESTNUM(EQUIV(U2;GRANDE.VALEUR($U$2:U$71;LIGNE($1:$10));0));1;0)+SI(ESTERREUR(V2);1;SI(ESTNUM(EQUIV(V2;PETITE.VALEUR($V$2:$V$71;LIGNE($1:$10));0));1;0))

Formule MATRICIELLE

Amicalement

Nad

Merci, effectivement même si je possède quelques bases je n'aurai jamais été jusque là

Malheureusement... ça ne fonctionne pas je ne retrouve pas le nombre de cellule " verte "

Re,

Il faut bien faire attention à la proposition de Nad ...

Une fonction matricielle exige d'utiliser simultanément les trois touches Ctrl Majuscule Enter .... et pas uniquement Enter ...

Ou comment passer pour un véritable novice.

Un grand merci Nad.

Re,

Nad et moi sommes contents ... que le casse-tête insoluble d'hier ... ne soit plus, dès ce soir, qu'un mauvais souvenir ... ...

je me donne une semaine pour comprendre en détail la formule afin de l'appliquer sur la même feuille pour 4 autres colonnes ... en espérant ne plus vous demander d'aide sur ce sujet

Cordialement

Axel

tutu80 a écrit :

je me donne une semaine pour comprendre en détail la formule afin de l'appliquer sur la même feuille pour 4 autres colonnes ... en espérant ne plus vous demander d'aide sur ce sujet

Cordialement

Axel

L'avantage, au moins sur ce Forum ... c'est que tu auras la bonne réponse ... et rapidement en plus !!!

C'est exact et je vous remercie.

En partant de la réponse de Nad, j'en ai déduis que pour effectuer le calcul de la colonne R nombre de " top 10 " sur 12 colonnes je devais écrire :

=SI(ESTNUM(EQUIV(B2;GRANDE.VALEUR(B2:B71;LIGNES($2:$71));0));1;0)+SI(ESTNUM(EQUIV(C2;GRANDE.VALEUR($C$2:$C$71;LIGNES($2:$71));0));1;0)+SI(ESTNUM(EQUIV(D2;GRANDE.VALEUR($D$2:$D$71;LIGNES($2:$71));0));1;0)+SI(ESTNUM(EQUIV(E2;GRANDE.VALEUR($E$2:$E$71;LIGNES($2:$71));0));1;0)+SI(ESTNUM(EQUIV(F2;GRANDE.VALEUR($F$2:$F$71;LIGNES($2:$71));0));1;0)+SI(ESTNUM(EQUIV(G2;GRANDE.VALEUR($G$2:$G$71;LIGNES($2:$71));0));1;0)+SI(ESTNUM(EQUIV(H2;GRANDE.VALEUR($H$2:$H$71;LIGNES($2:$71));0));1;0)+SI(ESTNUM(EQUIV(I2;GRANDE.VALEUR($I$2:$I$71;LIGNES($2:$71));0));1;0)+SI(ESTNUM(EQUIV(J2;GRANDE.VALEUR($J$2:$J$71;LIGNES($2:$71));0));1;0)+SI(ESTNUM(EQUIV(K2;GRANDE.VALEUR($K$2:$K$71;LIGNES($2:$71));0));1;0)+SI(ESTNUM(EQUIV(L2;GRANDE.VALEUR($L$2:$L$71;LIGNES($2:$71));0));1;0)+SI(ESTNUM(EQUIV(M2;GRANDE.VALEUR($M$2:$M$71;LIGNES($2:$71));0));1;0)

Cette fonction permettrai d'additionner toutes les cellules faisant parti du " top 10 " de la colonne

Si je comprends bien:

=SI(ESTNUM(EQUIV(B2;GRANDE.VALEUR(B2:B71;LIGNES($2:$71));0));1;0)

revient à dire que si B2 fait parti du top 10 (entre la ligne 2 et 71) alors la réponse est égal à 1 sinon 0

Malheureusement le résultat est toujours égale à zéro.

Bonjour

=SI(ESTNUM(EQUIV(B2;GRANDE.VALEUR(B2:B71;LIGNES($2:$71));0));1;0)

Plusieurs erreurs dans ta formule :

1 - Tu n'as pas figé la plage B2:B71 - écrire $B$2:$B$71

2 - LIGNE s'écrit sans S à la fin

3 - Pour avoir le top 10, écrire LIGNE($1:$10) - pour le top 5 ce serait LIGNE($1:$5) - rien à voir avec les N° de lignes de la plage

Ta formule modifiée donne :

=SI(ESTNUM(EQUIV(B2;GRANDE.VALEUR($B$2:$B$71;LIGNE($1:$10));0));1;0)

Attention de bien la valider en Matricielle

Amicalement

Nad

Bonjour,

Un grand merci, que c'est agréable d'avoir des réponses rapides et expliquées. Effectivement pour les lignes je n'y étais pas du tout...

Cependant j'ai constaté un soucis

Dans la formule:

=SI(ESTNUM(EQUIV(O2;GRANDE.VALEUR($O$2:$O$71;LIGNE($1:$10));0));1;0)+...+.. etc

La valeur en colonne W (qui totalise le nombre de cellule à fond vert) n'était pas toujours correct. En effet, lorsque la cellule en colonne Q ou T vaut " zéro " (et possède donc un fond vert) cette dernière n'était pas comptabilisée.

Pour "chuinter" le problème j'ai ajouter en fin de formule:

+SI(Q2=0;1;0)

Q indique le nombre de valeur basse sur 12 colonnes, si Q=0 alors T est obligatoirement égale à 0 étant donné que T reprends les 4 dernières valeurs inscrites dans les colonnes.

Une petite " bidouille " qui fonctionne mais... ce n'est pas propre.

Je me demande si le 0 dans le calcul final est considéré comme une valeur faisant partie du "top 10"

Cordialement

Axel

M

Rechercher des sujets similaires à "comptage fonction leur couleur fond"