我試圖鎖定一個單元格基於另一個單元格值。我使用了您提供的一些代碼,並且工作得很完美。我還有一些其他代碼也在活動工作表中更改,VBA發出錯誤。 隨着下面的代碼正在工作,但當條件改變時,我期望單元恢復正常並被解鎖,但仍然鎖定。需要審查的VBA代碼
的代碼是:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$B$7" Then
ActiveSheet.Unprotect ("mn")
If Target.Value = 10.4 Then Rows("21:26").EntireRow.Hidden = True
If Target.Value = 10.4 Then Rows("16").EntireRow.Hidden = True
If Target.Value <> 10.4 Then Rows("21:26").EntireRow.Hidden = False
If Target.Value <> 10.4 Then Rows("16").EntireRow.Hidden = False
End If
ActiveSheet.Protect ("mn")
End Sub
Private Sub Worksheet_Activate()
ActiveSheet.Unprotect ("mn")
If [E14] = "N/A" Then
[G14].Locked = True
'Remove locked property if E14's value is anything else or is deleted.
Else
[G14].Locked = False
'Optional, reprotect sheet
End If
If [E28] = "N/A" Then
[g28].Locked = True
'Remove locked property if E28's value is anything else or is deleted.
Else
[g28].Locked = False
'Optional, reprotect sheet
End If
If [E38] = "N/A" Then
[g38].Locked = True
'Remove locked property if E38's value is anything else or is deleted.
Else
[g38].Locked = False
'Optional, reprotect sheet
End If
ActiveSheet.Protect ("mn")
End Sub
謝謝您的時間。
請張貼代碼爲文本,而不是鏈接到一個圖片。 –
您的某個過程在進行更改時運行。另一個在紙張被激活時運行。哪一個給你一個問題? – Variatus
比你審查,第二部分,當F14不等於「N/A」,我期望單元格G14被解鎖,我可以輸入值。但是,G14仍然鎖定! (對於其他單元格也是如此) – MahdiSafa