Excel 2011 на iMac. Я пытаюсь создать макрос, который будет защищать / снимать защиту определенных ячеек на основе изменения значения ячейки.
Следующее выполнялось сегодня утром, когда я собирал / тестировал / отлаживал. Но теперь, по какой-то причине я не могу понять, он НЕ будет работать.
Когда я изменяю значение в ячейке J2, макрос должен запускаться. Но, похоже, нет. Команда MsgBox работала сегодня утром - я бы получил всплывающее окно. Но сейчас нет. Макросы включены.
Это произошло день или два назад, и я скопировал макрос заглушки из Интернета, а затем перестроил свой собственный макрос в заглушке, и он снова начал работать.
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$J$2" Then
MsgBox "You changed THE CELL!"
Me.Unprotect ""
Application.EnableEvents = False
Dim cell As Range
Dim counter As Integer: counter = 0
Dim range1 As Range
For Each cell In Range("$C$12:$H$12")
If cell.Value = "" Then
Set range1 = Range(Cells(12, 3), Cells(16, 3 + counter))
For Each c In range1
c.Locked = True
Next c
Else
Set range1 = Range(Cells(12, 3), Cells(6, 3 + counter))
For Each c In range1
c.Locked = False
Next c
counter = counter + 1
End If
Next cell
Me.Protect ""
Application.EnableEvents = True
End If
End Sub