【发布时间】:2020-08-25 23:13:14
【问题描述】:
首先,我使用 VBA 编辑器以“非常隐藏”模式隐藏所有工作表,并使用密码保护我的 VBA 项目。但问题是我可以轻松地通过在即时窗口中输入 vba 代码来取消隐藏所有工作表,即:
for each sh in worksheets:sh.visible=true:next sh
那么,哪种方式是没有人可以取消隐藏我的工作表的有效方法?
【问题讨论】:
标签: excel vba excel-2007
首先,我使用 VBA 编辑器以“非常隐藏”模式隐藏所有工作表,并使用密码保护我的 VBA 项目。但问题是我可以轻松地通过在即时窗口中输入 vba 代码来取消隐藏所有工作表,即:
for each sh in worksheets:sh.visible=true:next sh
那么,哪种方式是没有人可以取消隐藏我的工作表的有效方法?
【问题讨论】:
标签: excel vba excel-2007
试用 Excel>审阅>“保护工作簿”(结构)>密码 额外保护您的 VBA 代码。 如果您尝试更改 .visible,Excel 将不允许这样做。
【讨论】:
简短的回答:你不能。
任何可以编写 VBA 代码的人都可以取消隐藏它们。隐藏工作表不是安全功能!只是为了方便而隐藏一些东西,或者不不小心改变一些东西。
您无法阻止取消隐藏工作表。任何可以打开工作表的人都可以使隐藏工作表中的数据可见。
确保数据安全的唯一方法是不将这些数据分发给任何用户。因此,一种方法可能是将原始数据保存在允许用户发送请求并返回结果的服务器数据库中(但绝不是原始数据)。
【讨论】: