Remplissage de couleur d'une ligne selon des conditions

Bonjour,

Je voudrais créer un macro qui permet de détecter automatiquement l'action de remplir les couleurs, puis ne pas remplir la couleur de la cellule de la colonne B.
Par exemple :
Dans la ligne 6, lorsque je remplis la ligne 6 avec la couleur rouge, je veux que la cellule B6 ne soit pas remplie. Par contre, je peux par la suite de modifier la couleur de la cellule B6 si je veux mettre d'autre couleur manuellement.
Le macro doit exécuter automatiquement en arrière plan lorsque je veux remplir une ligne avec une couleur.

image

Voici le fichier de test ci-joint:

Bonjour,

A ma connaissance, il n'existe pas d'évènement qui réagisse à la colorisation d'une ligne (ce dont vous auriez besoin).

Donc, il faudrait dans l'idéal colorier la ligne via l'évènement doucle clic sur la feuille, sans toucher à la colonne B.

Mais il est peut-être possible de parvenir au même résultat avec des MFC.

Cdlt,

Bonsoir,

3GB bonsoir, d'accord avec vous point d'événementiel sur la coloration. par contre je cherche d'où vient l'idée de colorer une ligne entière, sous 2007 et plus cela fait plus de 16000 colonnes du coup le fichier grimpe en taille pour pas grand chose ! Comment et par qui est colorée cette ligne ?

Sinon par MFC, vous pouvez mettre une formule comme quoi si les cellules de la colonnes B sont non vide alors on les remplis de blanc :
=B1<>"", format remplissage blanc, s'applique à =$B:$B.

@ bientôt

LouReeD

Bonjour,

Je vous remercie pour vos suggestions, comme je suis un débutant dans vba, est-ce que quelqu'un a l'idée de pouvoir créer ce type de macro qui n'a pas l'air si simple ?

Voic ma logique à ce sujet avec ses différentes conditions ci-dessous:

0) La macro va s'exécuter en arrière plan, sans besoins que je la lance manuellement soit passer un buton ou par le raccourci clavier.
1) Lorsque je remplis la ligne 6 en couleur rouge, il ne va pas remplir la cellule B6, ou il ne touche pas le format de couleur de cette cellule.
2) Puis si je peux modifier la couleur de B6 en couleur Verte.
3) Par la suite, si je veux modifier la couleur de la ligne 6 en la remplacer par la couleur bleu, alors il ne va pas modifier la couleur de B6, elle reste en couleur verte, et celle de la ligne 6 devient bleu.

Bonjour govba, bonjour Loureed,

Comme expliqué ci-haut, ce n'est pas possible comme ça.

Il faudrait gérer la colorisation par un évènement se produisant sur la feuille de calcul (ou par un autre moyen) pour automatiser cette colorisation.

Ce n'est pas compliqué à réaliser mais il faut savoir quoi faire.

Et comme le disait Loureed, colorier une ligne entière, c'est trop lourd et inutile. En mettant les données sous forme de tableau structuré, on pourrait déjà faciliter la manoeuvre ou en trouver une plus adaptée au problème.

On pourrait aussi colorier en fonction de la valeur en colonne B (à chaque changement en colonne B).

Mais encore une fois, une mise en forme conditionnelle pourrait être la meilleure solution.

Cdlt,

Bonjour 3GB,

Pour le moment, je ne suis pas encore top avec VBA, je vais essayer creuser ce sujet plus tard.

Bonsoir,

n'hésitez pas à nous faire signe, mais en ouvrant un nouveau sujet... Pour faire propre il faudrait fermer celui-ci.

@ bientôt

LouReeD

Bonjour à tous. A mon avis il serait préférable de faire une MFC avec la raison de la couleur Rouge ? c'est pas au pif que vous choisissez de colorer la ligne 6 en rouge ?

( exemple colonne stock inférieur à 50 exemplaires ... )

Rechercher des sujets similaires à "remplissage couleur ligne conditions"