一旦數據輸入到一個單元格中,我需要使用VBA代碼來鎖定特定的一組單元格。上下文:用戶將沿着一行輸入用戶名,傳遞等。該行中的一些單元格被鎖定,並且一些單元格被解鎖以用於他們需要輸入數據的位置,但是一旦他們在最後一個單元格中回答了他們的數據,我想該行中的所有先前未鎖定的單元格將被鎖定。將數據輸入到一個單元格後鎖定特定的單元格組
如果沒有它一遍又一遍地更新和鎖定單元格,我很難解決這個問題。這就是我現在所擁有的。
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
ActiveCell.Select
If Range("O22") <> "" Then
ActiveSheet.Unprotect
Range("F22,G22,J22,K22,L22,O22").Select
Selection.Locked = True
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End If
End Sub
**從不**在Worksheet_Change或Workbook_SheetChange事件過程中使用ActiveCell。它不僅通常不準確,而且單元格的值可以通過打字以外的其他方式進行更改。 – Jeeped