所以基本上我想在每张纸中确保一个特定的范围(相同的范围总是适用(。
法典:
Sub desecure()
For x = 1 To ActiveWorkbook.Sheets.Count
ActiveWorkbook.Sheets(x).Range("C7:P16").Protect Password:="30713"
Next
End Sub
Sub secure()
For x = 1 To ActiveWorkbook.Sheets.Count
ActiveWorkbook.Sheets(x).Range("C7:P16").Protect Password:="30713"
Next
End Sub
它总是给出问题中陈述的错误。有人知道如何解决这个问题吗?(或替代方案(
您无法保护范围 - 将范围设置为"锁定"或"解锁",然后保护整个工作表
首先,所有单元格都设置为锁定,但由于电子表格不受保护,因此不会产生任何影响。在您的情况下(假设您希望能够更改其他单元格(,您需要解锁所有其他单元格,锁定要防止更改的范围,然后保护工作表。所以
Sub secure()
dim ws as worksheet 'i change this line - typo
For each ws in worksheets
ws.cells.locked=false
ws.Range("C7:P16").locked=true
ws.Protect Password:="30713"
next ws
End Sub
Sub Desecure
dim ws as worksheet
For each ws in worksheets
ws.unprotect "30713"
Next ws
End Sub