Прежде всего разблокируйте ячейки, которые вы хотите, чтобы пользователь мог редактировать следующим образом:
Cells(1, 1).Locked = False
Передайте ваш wokrkbook этой функции:
Public Sub ProtectWorksheets(workbook As excel.workbook)
On Error GoTo ErrHandler_
Dim ws As excel.Worksheet
For Each ws In workbook.Worksheets
'Protect Method with all the parameters passed in it
ws.Protect _
Password:="password", _
DrawingObjects:=False, _
Contents:=True, _
Scenarios:=True, _
UserInterfaceOnly:=True, _
AllowFormattingCells:=True, _
AllowFormattingColumns:=True, _
AllowFormattingRows:=True, _
AllowInsertingColumns:=True, _
AllowInsertingRows:=True, _
AllowInsertingHyperlinks:=True, _
AllowDeletingColumns:=True, _
AllowDeletingRows:=True, _
AllowSorting:=False, _
AllowFiltering:=False, _
AllowUsingPivotTables:=False
Next
ExitProc_:
DoCmd.Hourglass False
Exit Sub
ErrHandler_:
'Call LogError(Err.Number, Err.Description, "ExcelUtilities", "ProtectWorksheets")
Resume ExitProc_
Resume ' use for debugging
End Sub