Re,
Une première réponse de principe à étudier et adapter.
Cdlt.
Option Explicit
' --------------------------------------------------------------------------------
Public Sub Proteger_feuilles()
Dim ws As Worksheet
On Error Resume Next
For Each ws In ActiveWorkbook.Worksheets
With ws
.Unprotect
.Cells.Locked = True
.Range("G8:K12,N8:N12,Q8:T12").Locked = False
.Range("D18:E24,D26:E32,D42:E48,D50:E56").Locked = False
.Range("H18:H24,H26:H32,H42:H48,H50:H56").Locked = False
.Range("R18:R24,R26:R32,R42:R48,R50:R56").Locked = False
.Range("W18:X24,W26:X32,W42:X48,W50:X56").Locked = False
.Range("AA18:AA24,AA26:AA32,AA42:AA48,AA50:AA56").Locked = False
.Range("AP18:AP24,AP26:AP32,AP42:AP48,AP50:AP56").Locked = False
.Protect
End With
Next
End Sub
' --------------------------------------------------------------------------------
Public Sub Deproteger_feuilles()
Dim ws As Worksheet
On Error Resume Next
For Each ws In ActiveWorkbook.Worksheets
ws.Unprotect
Next
End Sub