MY代码应该用来解锁工作表,根据单元格K1的内容取消隐藏列,然后重新锁定工作表。我可以使用标准的If和IfElse语句来使它正常工作,但这会干扰其他需要锁定和解锁同一工作表中单元格的宏。因此,我认为如果使用事件处理程序,将可以解决此问题。但是我似乎无法使其正常工作或什么都做不到。一直以来,我还是一个新手,而且一直在学习,所以总是能得到任何帮助。
Private Sub Worksheet_Change(ByVal Target As Range)
ActiveSheet.Unprotect
If Not Intersect(Target, Range("K1")) Is Nothing Then
If InStr(1, Range("K1"), 1) > 0 Then
Columns("H:I").EntireColumn.Hidden = True
Else
Columns("H:I").EntireColumn.Hidden = False
End If
End If
ActiveSheet.Protect
End Sub