Bonjour,
J'utilise la macro suivante qui me permet de verrouiller la plage Ax:Dx quand on inscrit quelque chose en Ex :
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Range("E7:E106"), Target) Is Nothing Then
If Target <> "" Then
ActiveSheet.Unprotect
r = Target.Row
Range("A" & r & ":D" & r).Locked = True
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End If
End If
End Sub
Maintenant j'aimerais apporter deux modifications à cette macro :
- 1) il faudrait que l'action soit réversible. C'est à dire que par exemple quand on remplit la cellule E10 la plage A10:D10 soit verrouillée et quand on supprime ce qu'il y a en E10 la plage A10:D10 soit déverrouillée.
-2) la macro ne fonctionne pas quand la cellule en colonne E contient une formule. Est-ce que ça serait possible avec une formule de type en Ex : =si(Ax<>"";"X";"") ?
Merci d'avance,
Vivien