2014-12-06 43 views
0

我的单元格包含验证下拉列表,如果我点击单元格,如何让我的VBA解锁它?VBA事件 - 如果选择了受保护表单中的单元格解锁

否则,我试图简单地解锁特定的细胞一旦我运行受保护的宏,但它不工作:

Sub ProtectAll() 

Dim sh As Worksheet 
Dim MyPassword As String 

MyPassword = "test" 

For Each sh In ActiveWorkbook.Worksheets 
    sh.Protect Password:=MyPassword 
Next sh 

ThisWorkbook.Sheets("WACC1").Unprotect 
ThisWorkbook.Sheets("WACC1").Range("C4").Locked = False 
ThisWorkbook.Sheets("WACC1").Protect 

End Sub 

希望你们可以帮忙。

在此先感谢!

回答

3

你几乎得到了答案 只需提供密码来解锁,并确保工作表处于活动

Activesheet.Unprotect MyPassword 
0

可以使用userinterfaceonly选项保护工作表,但允许来自比方说,一个任何程序化的变化宏。

ThisWorkbook.Sheets("WACC1").Protect Password:=MyPassword, UserInterfaceOnly:=True

相关问题