1

我已经锁定了几个单元格和工作表,并且我有一个用于工作表的宏,但是我找不到锁定工作表并同时运行宏的方法。每次我尝试在宏被锁定时运行宏都会给我一个错误。

    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim g As Long
Dim r As Long
Dim y As Long
Dim overallhealth As Range
Dim varaincerange As Range
Set varaincerange = Sheets("D").Range("B5:B9")
Set overallhealth = Sheets("D").Range("B4")
y = Application.WorksheetFunction.CountIf(varaincerange, "y")
g = Application.WorksheetFunction.CountIf(varaincerange, "g")
r = Application.WorksheetFunction.CountIf(varaincerange, "r")
If g = 5 Then
overallhealth = "G"
ElseIf g = 4 And y = 1 Then
overallhealth = "G"
ElseIf r >= 2 Then
overallhealth = "R"
ElseIf y = 1 And r = 1 Then
overallhealth = "Y"
ElseIf y > 1 And r >= 1 Then
overallhealth = "R"
ElseIf y = 1 And r > 1 Then
overallhealth = "R"
ElseIf y >= 3 Then
overallhealth = "R"
ElseIf g = 3 And y = 2 Then
overallhealth = "Y"
ElseIf g = 4 And r = 1 Then
overallhealth = "Y"
End If
End Sub

如何在单元格和工作表被锁定和保护时运行宏?

谢谢!

4

1 回答 1

0

您可以简单地在宏的开头取消保护它

表格(“D”)。取消保护“密码”

最后用

表格(“D”)。保护“密码”

于 2013-02-18T15:24:01.543 回答