Changer la couleur d'un objet en fonction de 3 critères.

  • Initiateur de la discussion Initiateur de la discussion webmuster
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

webmuster

XLDnaute Junior
Bonjour à toutes et à tous

Après un examen minutieux, mais infructueux, des différents sujets, je sollicite à nouveau votre aide.

Je recherche un code macro qui me permettrai de changer la couleur d'un objet (drapeau) en fonction de la valeur d'une cellule (C2).
La valeur de la cellule C1 sera le résultat d'une formule, et donc variable.

En C2: 3 possibilités de résultat (1, 2 ou 3).
En fonction de cette valeur, le drapeau devra être vert (1), orange (2) ou rouge (3).

A terme, mon fichier comportera 5 indicateurs (drapeaux).

Pouvez-vous m'éclairer ?

Je vous joins un petit fichier.

Bien cordialement
 

Pièces jointes

Re : Changer la couleur d'un objet en fonction de 3 critères.

Re Bonjour à tous
- Je n'arrive pas à trouver le nom des formes (drapeaux) que j'ai copiées pour les inclure dans le code.
- Même la forme initiale (Wave 1) ne semble plus fonctionner.
Dans le fichier que je viens d'ouvrir, Wave 1 se nomme Vague 1

voir explications dans le fichier

à+
Philippe
 

Pièces jointes

Re : Changer la couleur d'un objet en fonction de 3 critères.

Merci phlaurent55

Comment puis-je associer les couleurs de police des cellules G11 . J11 . G18 . J18 . H24 et celles des objets de manière automatique?

Cordialement
 
Dernière édition:
Re : Changer la couleur d'un objet en fonction de 3 critères.

Bonjour à tous

Je m'en suis sorti avec le code suivant:

Code:
ActiveSheet.Shapes.Range(Array("Wave 1")).Select
  With Selection.ShapeRange.Fill
    .ForeColor.RGB = Array(RGB(0, 102, 0), RGB(255, 192, 0), RGB(255, 0, 0))([C2] - 1)
  End With

If Range("C2") = 1 Then
Range("G11").Font.Colorindex = 10 'vert'
ElseIf Range("C2") = 2 Then 
Range("G11").Font.Colorindex = 45 'orange'
Else
Range("G11").Font.Colorindex = 3 'rouge'
End If

Code que j'ai écrit 5 fois pour l'appliqué aux 5 objets et aux 5 cellules concernées (G11. J11. G18. J18. H24).
J'imagine qu'il existe un code plus sobre, mais dans l'attente, ça fonctionne.

Sur mon PC de travail utilisant Excel 2010 (version 2007 à mon domicile), lorsque je sélectionne un objet, le nom défini est bien "vague 1" , "vague 2" etc ... Pourtant, le code rédigé avec la référence "Wave" fonctionne parfaitement.

Merci à tous

Cordialement
 
Re : Changer la couleur d'un objet en fonction de 3 critères.

Merci Si...

Beaucoup plus sobre effectivement.

Je confirme que, sur Excel 2010, j'ai transcrit le code avec les noms "Wave ..." (bien que le nom affiché, quand on sélectionne un objet, soit "Vague ...", et que cela fonctionne très bien.

En tous cas, je pense, grâce à vous, avoir finalisé mon fichier.

Encore merci et longue vie à cette communauté.

Cordialement
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour