Colorier une cellule aprés recherche dans une liste

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

Myst

XLDnaute Occasionnel
Bonjour le forum
Je cherche a colorier des cellules en fonction d'un texte par rapport a un tableau de reference
exemple: En B4 de l'onglet "TABLEAU" j'ai "AAA" et je voudrais rechercher la couleur de fond de la cellule correspondante dans le tableau situé dans l'onglet "Listes" donc égale a "C2" de couleur vert et idem pour les autre couleurs
Je voudrais compiler la chose sous forme de macro et ne pas faire de mise en forme conditionnelle
Je joint un petit fichier
merci
 

Pièces jointes

Dernière édition:
Re : Colorier une cellule aprés recherche dans une liste

Bonjour

Un tout petit code à finaliser en fonction de tes besoins
Ici je nomme le tableau de couleurs ("couleurs")
Je selectionne la zone à colorier, et je lance la macro deb
La même chose pour effacer le traitement avec la macro efface

Change la manière de sélectionner la zone en fonction de ton utilisation
 

Pièces jointes

Re : Colorier une cellule aprés recherche dans une liste

Bonsoir,
dans le code de la feuille et la plage nommée

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim c As Range
If Not Intersect(Target, Range("B4:E31")) Is Nothing Then
    For Each c In Sheets("Listes").Range("codecouleur")
        If Target.Value = c.Value Then
            Range(Target, Target).Interior.Color = c.Interior.Color
        End If
    Next c
End If
End Sub
 

Pièces jointes

Re : Colorier une cellule aprés recherche dans une liste

Bonsoir st007
La proposition me convient parfaitement mais si le texte saisie dans l'onglet "TABLEAU" ne correspond a aucune données de la liste de l'onglet "Listes" je voudrais que la cellule reste blanche
merci
 
Re : Colorier une cellule aprés recherche dans une liste

re,

bien sure, j'aurai du y penser, ajoute (Target.Interior.Color = xlNone)

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim c As Range
If Not Intersect(Target, Range("B4:E31")) Is Nothing Then
Target.Interior.Color = xlNone
    For Each c In Sheets("Listes").Range("codecouleur")
        If Target.Value = c.Value Then
            Range(Target, Target).Interior.Color = c.Interior.Color
        End If
    Next c
End If
End Sub
 
Re : Colorier une cellule aprés recherche dans une liste

Bonjour, st007, le forum
merci pour le complement de code ca fonctionne bien, il y a juste un problème lorsque je supprime le texte dans plus d'une cellule en meme temps,j'ai un bug ?

j'aurais une autre demande ,je voudrais que les codes couleurs soient non pas sur une seul feuille "Listes" mais sur 5 ,une couleur par feuille afin de pouvoir ajouter ou retirer des noms des listes indépendamment les uns des autres
J'ai joint la version V4
Encore merci
 

Pièces jointes

Dernière édition:
- 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