我必须保护 A:O 列不在我正在创建的工作表中被编辑,但它似乎无法正常工作。
Set Wb = Workbooks.Add(XlWBATemplate.xlWBATWorksheet)
With Wb
With .Worksheets("Sheet1")
.Cells.Locked = False
.Columns("A:O").Locked = True
End With
为什么在运行宏后可以编辑这些列?
下面的其余脚本(包括保存):
.SaveAs strNewPath & strFileName, Password:="password", FileFormat:=51
.Saved = True
.Close
End With
Set Wb = Nothing
End If
Next
最佳答案
我将添加一个答案来澄清事情。 Locked
属性仅指示当工作表受到保护时单元格是否可修改。您可以保护工作表,方法是转至 Excel 工具栏中的“审阅”选项卡,然后选择保护工作表。
或者,您可以在代码中保护和取消保护。例如:
Sub Protect_Sheet()
Sheet1.Protect "Password"
End Sub
Sub Unprotect_Sheet()
Sheet1.Unprotect "Password"
End Sub
如果您想对锁定的工作表执行某些操作,然后保护工作表,您可以在更大的方法中调用这些方法。
关于excel - 为什么这些列没有正确锁定?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53191865/