以下代碼用於鎖定符合工作簿每個工作表中的條件的單元。該代碼可以在單個工作表上正常工作,但是當我想應用到整個工作簿時,錯誤信息「無法將鎖定屬性設置爲範圍類」。保護循環中的工作表
工作簿循環過程也是正確的,有人可以告訴我是什麼導致錯誤?
非常感謝!如下面的代碼,我很抱歉,我不知道怎麼在這裏顯示正確的格式:
Sub selectnumbers()
Dim ws_count As Integer
Dim n As Integer
ws_count = ActiveWorkbook.Worksheets.Count
For n = 2 To ws_count
Dim rng As Range
Dim cell As Range
Dim i As Range
Set rng = Nothing
For Each cell In ActiveSheet.UsedRange
If IsNumeric(cell) = False Or cell.Interior.Pattern = xlLightUp Or cell = "" Then
If rng Is Nothing Then
Set rng = cell
Else
Set rng = Application.union(rng, cell)
End If
End If
End If
Next cell
If Not rng Is Nothing Then
rng.Select
End If
Selection.Locked = True
ActiveSheet.Protect Password:="ADARS", DrawingObjects:=True, Contents:=True, Scenarios:=True _
, AllowSorting:=True, AllowFiltering:=True, AllowUsingPivotTables:=True
Next n
End Sub
有似乎只是'接下來cell'前至少一個額外的'結束If'。你能澄清嗎? – Jeeped
如果鎖定整個工作表,則不需要單獨鎖定範圍 – psychicebola
鎖定單元格和保護工作表不是分開的 - 即使工作表受到保護,解鎖的單元格也可以更改。 –