Mise en forme conditionnelle

Bonjour à tous,

Je requiers vos lumières pour un problème de mise en forme.

J'aimerais mettre en valeur de manière automatique (le tableau réel est de grande taille contrairement à celui fourni en exemple) le minimum et le maximum de trois paramètres (x, y, z) dans la feuille Résultats.

J'imaginais pouvoir faire ça avec une mise en forme conditionnelle mais je n'y arrive pas. Peut-être est-ce dû au fait qu'il y a des formules dans les cellules et non des valeurs.

Je suis ouvert à toute type de solution tant qu'elle répond à mes besoins.

D'avance je vous remercie pour votre aide et n'hésitez pas si vous avez des questions.

Cordialement

Salut,

Tu demandes 6 coloriages mais tu indiques 3 cellules à colorier

Faut-il chercher

  • le minimum et le maximum des x dans la colonne O,
  • le minimum et le maximum des y dans la colonne P,
  • le minimum et le maximum des z dans la colonne Q ?

A te relire

Bonsoir Yvouille,

Je me suis mal exprimé visiblement. La légende ne sert qu'à montrer le type de valeur (x, y, ou z) de chaque colonne de mon tableau (de A à E). Mais je souhaite bien 6 coloriages.

J'en profite également pour préciser qu'il n'y aura pas, a priori, de problème d'unicité (toutes les valeurs seront distinctes). Dans le cas contraire, colorier les deux valeurs minimales ou maximales ne me pose aucun souci.

Enfin, j'ai joint une nouvelle version de mon exemple afin d'illustrer, un peu mieux j'espère, mes besoins.

Je rappelle que la solution qui m'intéresserait est automatique et si, en plus, elle s'adapte à une taille variable de tableau, ça serait alors grandiose !

Encore merci pour vos lumières et bonne fin de soirée.

Bonjour

Les formules je ne sais pas

Je me doute que pour ce cas cela ne doit pas être évident

Avec une macro en attendant

Bonsoir

Par formule dans MFC :

Amicalement

Nad

Bonsoir Nad et Banzaï64,

Je vous remercie déjà d'avoir pris la peine et le temps de vous pencher sur mon problème.

Je n'ai que survolé vos deux solutions (qui fonctionnent toutes les deux), je vais donc dès demain soir m'intéresser plus en profondeur à celles-ci et revenir vers vous rapidement pour des explications (je ne suis pas certain d'arriver à tout comprendre de moi-même...).

Quoiqu'il en soit, je vous adresse encore mes remerciements et vous souhaite une bonne fin de soirée,

Cordialement,

Fatos.

Bonjour Nad,

Navré de la tardiveté de ma réponse, j'ai été plus occupé que prévu.

Ne maitrisant pas vraiment la MFC, des questions me viennent après avoir réfléchi sur vos formules.

Par exemple, pour la première formule, que représente C9 ? Est-ce une sorte de cellule variable qui prendra l'adresse de chaque des cellules de la plage d'application de la MFC ?

Ceci expliquerait les deux premières conditions dans votre ET() où vous vérifiez la présence de la cellule variable dans la première colonne de chaque lettre et le fait que cette cellule soit non vide.

Si je comprends la troisième condition, le fait que vous mettiez "TABLO" permet de faire une "boucle" (ou balayage, je ne sais pas trop quel terme est le plus adéquat) sur l'ensemble des cellules de TABLO pour déterminer le maximum ?

D'avance merci pour vos éclaircissements,

Fatos.

Bonsoir

Je vais essayer de t'expliquer la formule (couleur rouge pour le MAX) :

1 – J'ai défini le nom TABLO (voir Formules ==> Gestionnaire de noms) qui prend en compte les lignes remplies de la colonne C et de la ligne 9.

De cette façon, tu peux ajouter des données, que ce soit en lignes ou en colonnes

=DECALER(Résultats!$C$9;;;NBVAL(Résultats!$C:$C)-1;NBVAL(Résultats!$9:$9)-1)

2 – La 1ère formule de la MFC

=ET(MOD(COLONNE(C9);3)=0;C9<>"";C9=MAX(SI(MOD(COLONNE(TABLO);3)=0;TABLO)))

C9 car il s'agit de la 1ère cellule concernée par la formule (la MFC s'applique à la plage $C$9:$Z$10000) – Tu remarqueras que la cellule C9 n'est pas figée (elle n'a pas le signe $) afin de pouvoir étudier chaque cellule du tableau. (TABLO)

Comme tu veux utiliser 1 colonne sur 3, il faut savoir dans quelle colonne se trouve la cellule.

MOD(COLONNE(C9);3)

Retournera :

0 s'il s'agit de la 1ère colonne (C)

1 s'il s'agit de la 2ème colonne (D)

2 s'il s'agit de la 3ème colonne (E)

0 s'il s'agit de la 4ème colonne (F)

1 s'il s'agit de la 5ème colonne (G)

2 s'il s'agit de la 6ème colonne (H)

Etc ….

Donc, pour appliquer la MFC, il faut être sur une cellule de la colonne 0

MOD(COLONNE(C9);3)=0

Et si la cellule comporte un chiffre

C9<>""

Et si la cellule est égale au nombre le plus grand des colonnes 0 de tout le tableau

C9=MAX(SI(MOD(COLONNE(TABLO);3)=0;TABLO))

Si ces 3 conditions sont remplies, la couleur rouge sera appliquée.

En changeant MAX par MIN, ce sera la couleur verte.

Amicalement

Nad

Bonsoir Nad,

Merci d'avoir pris le temps de ces explications.

J'avais déjà compris les formules ainsi que les trois conditions de votre ET() mais il est vrai que je n'étais pas certain du comportement de C9 qui est donc bien une cellule variable balayant l'ensemble des cellules de la plage d’application de la MFC.

L'insertion d'un tableau dynamique et le filtrage grâce à des congruences sont des idées intéressantes !

Même si je comprends à présent entièrement votre formule, il me faudra encore un peu de pratique pour imaginer des solutions comme les vôtres !

Le sujet étant résolu, je vous remercie encore Yvouille, Banzaï64 et Nad pour votre aide.

Fatos

Rechercher des sujets similaires à "mise forme conditionnelle"