Bonjour à toutes et tous,
Je cherche à empêcher la suppression de différentes plages de cellules dans ma feuille.
J'ai utilisé le code suivant :
Private Sub Worksheet_Change(ByVal Target As Range)
'Empêcher la suppression de cellule
If Intersect(Target, Range("J4:R65536")) Is Nothing Then Exit Sub
On Error GoTo ExitPoint
Application.EnableEvents = False
If Not IsDate(Target(1)) Then
Application.Undo
MsgBox " Il est INTERDIT de supprimer le contenu de ces cellules " _
, vbCritical, "AHO)"
End If
ElseIf Intersect(Target, Range("A4:I4")) Is Nothing Then Exit Sub
On Error GoTo ExitPoint
Application.EnableEvents = False
If Not IsDate(Target(1)) Then
Application.Undo
MsgBox " Il est INTERDIT de supprimer le contenu de ces cellules " _
, vbCritical, "(AHO)"
Else
ExitPoint:
Application.EnableEvents = True
End Sub
J'imagine que cela vient de mon ElseIf - mais je ne vois pas.
Lorsque que j'essaie avec une seule plage, cela fonctionne :
Private Sub Worksheet_Change(ByVal Target As Range)
'Empêcher la suppression de cellule
If Intersect(Target, Range("J4:R65536")) Is Nothing Then Exit Sub
On Error GoTo ExitPoint
Application.EnableEvents = False
If Not IsDate(Target(1)) Then
Application.Undo
MsgBox " Il est INTERDIT de supprimer le contenu de ces cellules " _
, vbCritical, "AHO)"
End If
ExitPoint:
Application.EnableEvents = True
End Sub
Je vous remercie par avance pour le temps que vous me consacrerez
Partager