·
2 months ago
@daryll Hi,
Which Excel version are you using?
假設您有一個工作表,並且只有一定範圍的空白單元格需要輸入數據,並且在完成輸入數據之後,您需要自動鎖定這些單元格以防止再次更改。 您如何才能做到這一點? 本文可以為您提供幫助。
例如,空白單元格的特定範圍是A1:F8。 在Excel中輸入數據後,請執行以下操作以鎖定這些單元格。
1.請先解鎖此範圍,選擇單元格並單擊鼠標右鍵,然後選擇 單元格格式 在右鍵菜單中,然後在 單元格格式 對話框,取消選中 鎖定 下框 保護 標籤,最後點擊 OK 按鈕。 看截圖:
2。 點擊 回顧 > 保護工作表。 並指定密碼以保護此工作表。
3.右鍵單擊工作表標籤,選擇 查看代碼 從右鍵單擊菜單中。 然後將下面的VBA代碼複製並粘貼到“代碼”窗口中。 看截圖:
VBA代碼:數據輸入或輸入後鎖定或保護單元格
Dim mRg As Range Dim mStr As String Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) If Not Intersect(Range("A1:F8"), Target) Is Nothing Then Set mRg = Target.Item(1) mStr = mRg.Value End If End Sub Private Sub Worksheet_Change(ByVal Target As Range) Dim xRg As Range On Error Resume Next Set xRg = Intersect(Range("A1:F8"), Target) If xRg Is Nothing Then Exit Sub Target.Worksheet.Unprotect Password:="123" If xRg.Value <> mStr Then xRg.Locked = True Target.Worksheet.Protect Password:="123" End Sub Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Not Intersect(Range("A1:F8"), Target) Is Nothing Then Set mRg = Target.Item(1) mStr = mRg.Value End If End Sub
備註:在代碼中,“ A1:F8”是您需要輸入數據的範圍; “ 123”是此受保護工作表的密碼。 請根據需要更改它們。
4。 按 其他 + Q 同時關閉按鍵 Microsoft Visual Basic for Applications 窗口。
將數據輸入到範圍A1:F8的單元格後,它們將被自動鎖定。 如果您嘗試更改此範圍的任何單元格內容,則會出現一個提示對話框。 看截圖: