Private Sub Worksheet_SelectionChange
ActiveSheet.Unprotect
Target.Locked = False
On Error Resume Next
If Target <> "" Then
Target.Locked = True
ActiveSheet.Protect Contents:=True
End If
End Sub作者: luhpro 時間: 2013-10-18 01:18
我覺得1#的問題是
Target為多個儲存格(合併儲存格也算多個)時,
If Target <> "" Then 中的 Target 比較時會自動使用屬性 .value,
但是此時的 Target.value 為一 value 陣列,故無法比較,發生錯誤
而由於加上 On Error Resume Next 導致去執行下一行的鎖定,應改為:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)