我在网上找到了一个宏,可以用密码保护工作表。它工作得很好,但当我保存文件时,我收到消息:运行时错误'9':订阅超出范围。我以前从未编程或使用过visual basic,需要一些帮助。谢谢
宏是:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
'Step 1:Protect the sheet with a password
Sheets("Sheet1").protect Password:="btfd"
'Step 2: Save the workbook
ActiveWorkbook.Save
End Sub发布于 2014-02-21 06:10:47
"Subscript out of range“表示您试图访问一个不存在的集合中的元素。您的工作簿中是否有"Sheet1“?如果不是,则需要将其更改为要保护的工作表的名称。
发布于 2014-02-21 06:21:10
为什么要使用宏?Excel具有内置的密码保护。当您选择文件/另存为...在保存按钮旁边应该有一个工具按钮,单击它,然后单击“常规选项”,您可以在其中输入“打开密码”和“修改密码”。
发布于 2014-02-21 17:17:52
当您收到错误消息时,您可以选择单击"Debug":这将引导您转到发生错误的行。
Sheets("Sheet1").protect Password:="btfd"因为"Sheet1“很可能并不存在。
ActiveWorkbook.Save您能先按一下Debug按钮来检查一下吗?最重要的是,正如戈登·贝尔所说,为什么要使用宏来保护工作簿?
https://stackoverflow.com/questions/21920697
复制相似问题