У меня проблема с блокировкой ячеек в Excel.
До сих пор я использовал этот код для всех моих листов
Private Sub Worksheet_SelectionChange(ByVal target As Range)
Const pw As String = "Secret"
Dim rFormulaCheck As Range
On Error Resume Next
With target
.Parent.Unprotect pw
.Locked = False
.FormulaHidden = False
If .Cells.Count = 1 Then
If .HasFormula Then
.Locked = True
.FormulaHidden = True
.Parent.Protect pw, , , , 1
End If
ElseIf .Count > 1 And .Count < 5 Then
With .SpecialCells(xlCellTypeFormulas)
.Locked = True
.FormulaHidden = True
.Parent.Protect pw, , , , 1
End With
End If
End With
On Error GoTo 0
End Sub
, где я заблокировал первые 5 верхних строк. Я могу редактировать нижние, но нет возможности скопировать материал из некоторой ячейки на следующий лист (в аналогичное место). Опция отмены (Crtl + Z) также не работает. Как я могу изменить этот код?
Я также попытался установить некоторые условия здесь:
Но это не помогло.
Похоже, что блокировка первых 5 строк оказывает влияние на весь лист. Можно ли ограничить его только первыми 5 строками, сохраняя обычные условия редактирования, копирования и вставки для остальной части этого листа?