Merci Banzaï,
C'est ce que je cherchais!
je l'ai adapté à mon utilisation:
Je me demandais à quoi sert la ligne :
ActiveSheet.EnableSelection = xlUnlockedCells
Je l'ai retiré du code car je ne voyais pas ce qu'elle apportait.
Voici mon code pour info:
Private Sub Worksheet_Change(ByVal Target As Range)
'Pour chaque modification de la colonne type:
'vérouillage des prix unitaires, dont le type est différent de "A"
'dévérouillage des prix unitaires, dont le type est "A"
If Not Intersect(Range("C28:C55"), Target) Is Nothing And Target.Count = 1 Then
ActiveSheet.Unprotect
If UCase(Target) = "A" Then
Cells(Target.Row, 12).Locked = False
Else
Cells(Target.Row, 12).Locked = True
End If
ActiveSheet.Protect
End If
End Sub