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

Macro pour changer de couleur une ligne suivant choix d'un menu déroulant

  • Initiateur de la discussion Initiateur de la discussion pilou201
  • 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 !

pilou201

XLDnaute Nouveau
Hello,

Grand débutant en Macro, je cherche une macro sous excel permettant de réaliser le miracle suivant =>
- dans la colonne A : dans chaque cellule, un menu déroulant avec deux état 'CLOS' - 'OUVERT'
Quand on choisit le statut 'CLOS', je souhaiterai que la ligne passe en vert
Quand on choisit le statut 'OUVERT', je souhaite que cette case de la colonne A passe en rouge
Quand rien de choisi, que ... rien ne se passe ... que ca reste blanc 🙂

Merci d'avance de votre aide précieuse !
 
Re : Macro pour changer de couleur une ligne suivant choix d'un menu déroulant

Bonjour Pilou

il me semble qu'une simple mise en forme conditionne devrait suffire. Barre de menu excel => format => mise en forme conditionnelle, condition 1, dans la combo tu choisis "la formule est", tu colles la formule ci-dessous, et tu appliques le format voulu.

Code:
=$A1="CLOS"

Idem pour rajouter une "condition 2" afin de tester la valeur "OUVERT".

Te reste plus qu'uà tirer ta cellule vers la droite et vers le bas pour appliquer aux lignes et colonnes...

bonne journée
@+
 
Re : Macro pour changer de couleur une ligne suivant choix d'un menu déroulant

Re, bonjour Jean-Pierre🙂

Aarf, j'avais hésité sur le coup de la ligne en vert et de la cellule en rouge... Comme ceci notre ami disposera des 2 solutions...

@+
 
Re : Macro pour changer de couleur une ligne suivant choix d'un menu déroulant

Bonjour,

J'ai la même question mais avec une colonne qui contient des dates. Je veux que la ligne change (couluer ou rayer) lorsque qu'une date est enregistré.
Merci

Claude
 
Re : Macro pour changer de couleur une ligne suivant choix d'un menu déroulant

Re, bonjour Caude

il est préférable d'ouvrir un nouveau fil pour ta question, si tout le monde faisait cela, on ne pourrait rien suivre d'une discussion...

bonne journée
@+
 
Re : Macro pour changer de couleur une ligne suivant choix d'un menu déroulant

Merci à tous pour votre aide ! En crapahutant sur le net cette nuit 🙂 et en croisant avec vos post j'ai consolidé une macro qui à l'aire de fonctionner. Je la met ci-dessous si kelkun interessé.

Du coup, j'ai un autre soucis maintenant, et là je rame encore et votre aide sera encore précieuse =>

- dans la premiere colonne A j'ai une cellule avec deux états possibles "CLOS" et "OUVERT"
- dans la deuxieme colonne B j'ai une cellule qui indique le numéro de la demande : "n°1", "n°2", ....

Je souhaiterai =>
- quand on crée une nouvelle ligne en bas en passant l'état de la premiere cellule à "OUVERT" => la cellule à coté affiche directement le numéro de demande (apres avoir incrémenté le numéro de demande en ayant rerépé le numéro de demande le plus élevé de la colonne B ...)
- quand on passe à l'état "CLOS", j'aimerai que la ligne en question soit remontée tout en haut du tableau en ligne 2 ...

Bon je sais là c'est vraiment le rêve et ca dépasse mess compétences actuelles mais si vous etes prêt à relever le défi 🙂



Macro - changement couleur ligne suivant état =>

Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("A2:A50")) Is Nothing Then: Exit Sub
choix = Target.Value
Select Case choix
Case Is = "CLOS"
Target.EntireRow.Interior.Color = RGB(204, 255, 204)
Case Is = "OUVERT"
Target.EntireRow.Interior.Color = xlNone
Target.Interior.ColorIndex = 3
Target.Offset(0, 1).Interior.ColorIndex = 3
Target.Offset(0, 2).Interior.ColorIndex = 20
Target.Offset(0, 3).Interior.ColorIndex = 20
Target.Offset(0, 4).Interior.ColorIndex = 20
Target.Offset(0, 5).Interior.ColorIndex = 20
'....continue avec les autres intitulés
Case Is = ""
Target.EntireRow.Interior.ColorIndex = xlNone
End Select

End Sub
 
- 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

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…