Das folgende Beispiel stammt von Bernd Herrmann:
Wenn Sie umfangreiche Arbeitsblätter mit vielen Formeln erstellen, aber auch viele Zellen für Einträge vorsehen, ist es sicherer, alle Zellen die eine Formel beinhalten mit dem Zellschutz zu versehen. Gleichzeitig müssen aber Einträge in den anderen Zellen möglich sein. Theoretisch müssten Sie jetzt jede einzelne Zelle Ihres Arbeitsblattes dahingehend überprüfen. Das folgende Makro übernimmt das für Sie:
Sub formschutz()
On Error GoTo fehlerbeh
Application.ScreenUpdating = False
ActiveSheet.Protect DrawingObjects:=False, Contents:=False, _
Scenarios:=False
With Cells
.Locked = False
.FormulaHidden = False
End With
With Cells.SpecialCells(xlFormulas, 23)
.Locked = True
.FormulaHidden = True
End With
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, _
Scenarios:=True
Exit Sub
fehlerbeh:
If Err.Number <> 0 Then
MsgBox Err.Description
End If
Application.ScreenUpdating = True
End Sub