Cela fonctionne parfaitement !!!
Merci beaucoup !!
Ultime question : Est-ce que si j'ai le même principe avec la colonne S et un onglet DG, je peux écrire :
ElseIf Not Intersect(Target, lo1.ListColumns("DG").DataBodyRange) Is Nothing Then
If Intersect(Target, lo1.ListColumns("DG").DataBodyRange).Count > 1 Then
Application.Undo
MsgBox "Une seule modification à la fois ... sinon c'est le bazar !"
Else
If Target.Value = "Oui" Then
copie sh, Target.Row, "DG"
ElseIf Target.Value = "Non" Then
supprime sh, Target.Row, "DG"
End If
End If
Edit : cela fonctionne. En revanche, le message box reste le même :p Une idée pour l'adapter ? Un message box pour la condition UO et un message box pour la condition DG ?