Déclencher une macro événementielle
cpa6675
-
michel_m Messages postés 18903 Date d'inscription Statut Contributeur Dernière intervention -
michel_m Messages postés 18903 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
J'ai une feuille Excel comportant 8 colonnes (de A à H).
J'ai choisi une couleur de police rouge pour les colonnes A à G.
Dans la colonne H, j'ai mis en place une liste de choix comprenant 2 éléments ("PLANIFIE" et "CONFIRME").
Je souhaite créer une macro événementielle pour que, à chaque fois que je choisirai l'élément "CONFIRME", l'ensemble de la ligne sur laquelle se trouve cet élément passe à la couleur bleue.
Vous trouverez ci-dessous le code que j'ai écrit à la lecture des différents éléments recueillis sur le net.
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Column = 8 Then
If Range("H" & Target.Row) = "CONFIRME" Then Target.EntireRow.Font.Color = vbBlue
End If
End Sub
Cela ne fonctionne pas. Alors si quelqu'un peut me dépanner, merci d'avance.
J'ai une feuille Excel comportant 8 colonnes (de A à H).
J'ai choisi une couleur de police rouge pour les colonnes A à G.
Dans la colonne H, j'ai mis en place une liste de choix comprenant 2 éléments ("PLANIFIE" et "CONFIRME").
Je souhaite créer une macro événementielle pour que, à chaque fois que je choisirai l'élément "CONFIRME", l'ensemble de la ligne sur laquelle se trouve cet élément passe à la couleur bleue.
Vous trouverez ci-dessous le code que j'ai écrit à la lecture des différents éléments recueillis sur le net.
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Column = 8 Then
If Range("H" & Target.Row) = "CONFIRME" Then Target.EntireRow.Font.Color = vbBlue
End If
End Sub
Cela ne fonctionne pas. Alors si quelqu'un peut me dépanner, merci d'avance.
Configuration: Windows XP Internet Explorer 7.0 Excel 2002
2 réponses
-
Bonjour
Elle marche bien chez moi cette macro, sans changer la moindre virgule.
L'as-tu bien mise dans le module associé à la feuille - pas le module ThisWorkbook ? -
Bonsoir,
a essayer:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Column = 8 Then
If target= "CONFIRME" Then
Target.EntireRow.Font.Colorindex = 5
End If
End If
End Sub