Bonjour,
Comme ça :
Private Sub Worksheet_Change(ByVal Target As Range)
For Each cell In Range("TRAME1[FORME]")
If cell.Value = "Grand titre" Then cell.Style = "GRAND TITRE MB CONCEPTION" Else cell.Style = "Normal"
Next cell
End Sub
...Ça devrait suffire.
Remarque : Je ne vois pas de raison de vérifier toute la colonne quand une ligne a été modifié (sauf si on modifie toute la colonne en bloc avec un copier/Coller par exemple)
Donc si on estime qu'on ne change qu'une cellule à la fois, ce code devrait suffire :
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count = 1 Then
If Target.Value = "Grand titre" Then Target.Style = "GRAND TITRE MB CONCEPTION" Else Target.Style = "Normal"
End If
End Sub
Nota : Pas la peine de mettre des EnableEvents pour des changements de format. (non gérés)
A+