我有一个基于登录信息从用户收集信息的excel工具。信息存储在其中一个工作表的单元格中。如果我想锁定这些单元格以便它们不能手动更新,那我该怎么做呢?如果其他人登录,显然这些单元格会改变。我希望通过VBA来实现。excel vba - 只通过代码启用单元格编辑
我只是想锁定6个......一切应该为可编辑...
感谢
我有一个基于登录信息从用户收集信息的excel工具。信息存储在其中一个工作表的单元格中。如果我想锁定这些单元格以便它们不能手动更新,那我该怎么做呢?如果其他人登录,显然这些单元格会改变。我希望通过VBA来实现。excel vba - 只通过代码启用单元格编辑
我只是想锁定6个......一切应该为可编辑...
感谢
你可以用这样的密码保护工作表:
Private Sub Workbook_Open()
Sheets("sheetName").Protect Password:="YourPassword", UserInterfaceOnly:=True
End Sub
那将阻止用户在不输入密码的情况下手动更改工作表。您的VBA代码仍然可以进行更改,因为您已将UserInterfaceOnly
设置为True
。
请注意,用户可以通过Visual Basic编辑器导航到代码轻松查看此密码。但是,您也可以使用密码保护代码:只需右键单击模块,单击VBAProject Properties并转到Protection选项卡。
查看此页面以了解更多信息:Excel VBA: Macro Code To Run Macros On Protected Worksheets & Sheets。
如果这些细胞是要保护,那么就改变Locked
属性设置为false改变剩余细胞的细胞特性,使单元格中的问题,为Locked
然后保护使用UserInterfaceOnly
设置的片材在纸张上唯一的为真(但意识到这不适用于所有可能的宏观变化,所以我通常避免它。)
还有其他方法可以工作,但我认为这是最适合您的解决方案。如果没有,请添加评论让我知道。
为什么不只保护工作表? – 2012-04-11 18:34:49