在 Excel 2010 中禁用 VBA 代码编辑器窗口
我正在寻找为我的 Excel 项目添加额外安全级别的可能性。
我们有多个用户。有些人知道(并且应该知道)解锁 VBA 宏的密码。其他人并不意味着能够访问这些内容。
我不确定是否有人拥有不应使用的密码(更改密码并没有阻止篡改),因此我想为任何未经批准的用户禁用 VBA 编辑窗口。我找不到任何方法可以做到这一点,这可能吗?
我无法禁用保存选项,因为所有用户都需要保存数据。
我尝试禁用功能区图标等,但没有成功。仍然可以使用 Alt+F11 打开代码窗口。
任何帮助都会很棒。
I am looking for a possibility to add an additional level of security to my Excel projects.
We have multiple users. Some who know (and are meant to) the password that unlocks the VBA macros. Others are not meant to be able to access these.
I'm not sure if someone has the password that shouldn't (changing the password hasn't stopped tampering) so i would like to disable the VBA editing window for any user not approved. I can't find any way to do this though, is it possible?
I can't disable the save option as all users need to save data.
I have tried to disable the ribbon icons etc, but with no sucess. It is still possible to open the code window with Alt+F11.
Any help would be great.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我以前使用过 Excel 2003,但这个概念也应该适合您。您可以考虑
Application.OnKey "%{F11}" "MyNullSub"
) 并Application.CommandBars(...)。 FindControl(ID:=..).OnAction = "MyNullSub"
)作为
注册表中需要存在的条目的依赖项 (
GetSetting(...)
),但这只会帮助直到这个额外的秘密以与(更改的)密码明显相同的方式传播。I am coming from Excel 2003, but this concept should work for you as well. You could think of
Application.OnKey "%{F11}" "MyNullSub"
) plusApplication.CommandBars(...).FindControl(ID:=..).OnAction = "MyNullSub"
)with
as a dependency of an entry in the registry that needs to be present (
GetSetting(...)
), but this will only help until this additional secret is spread around in the same way the (changed) passwords apparently did.