首先,我使用VBA编辑器以“非常隐藏”模式隐藏了所有工作表,并使用密码保护了我的VBA项目。但是问题是我可以通过在立即窗口中输入vba代码轻松地取消隐藏所有工作表,即:
for each sh in worksheets:sh.visible=true:next sh
那么哪一种有效的方法使任何人都无法取消隐藏我的工作表?
简短回答:您不能。
能够编写VBA的任何人都可以取消隐藏它们。隐藏工作表不是安全功能!只是为了方便起见隐藏一些东西,或者偶然地更改某些东西。
您无法阻止取消隐藏工作表。任何可以打开工作表的人都可以使隐藏的工作表中的数据可见。
绝对绝对的保护数据的方法是不将该数据分发给任何用户。因此,一种方法可能是将原始数据存储在服务器数据库上,该数据库允许用户发送请求并返回结果(但绝不会显示原始数据)。