Excel的VBA功能非常惊人。 VBA是一种成熟的编程语言,这意味着您可以使用它执行大多数操作。有些人甚至用VBA编写了整个应用程序。建立在Excel环境上以完成特定任务的应用程序。

如果您已经编写了这样的系统,那么您无疑会依赖于首次启动Excel或打开工作簿时运行的自动宏。通常使用这些宏来配置Excel环境并启动应用程序运行。令人沮丧的是,有人可以通过在打开工作簿时按住Shift键来禁用整个系统。 (按住Shift键将禁用与工作簿关联的任何自动宏。)

Excel中无法禁用启动宏的Shift键旁路。原因很简单-安全性。如果可以阻止或禁用此功能,则宏病毒可能会开始运行,而用户对此无能为力。这将是非常糟糕的。

一种可能的解决方法是,如果不允许运行启动宏,则不让工作簿做任何有用的事情。打开工作簿时显示的默认工作表应说明必须打开启用宏才能正常工作的工作簿。然后可以指示用户关闭工作簿,然后重试。

在这种默认情况下,可以将工作簿中的其他工作表设置为“非常隐藏”状态。这是通过将每个工作表的Visible属性设置为xlSheetVeryHidden来完成的。设置此属性后,将无法手动使工作表可见。这只能通过VBA完成。

如果用户打开工作簿并且宏成功运行,则他们可以隐藏默认工作表或直接删除它。然后,宏可以根据需要取消隐藏“非常隐藏”的工作表,以所需的方式实现应用程序。

注意:

如果您想知道如何使用此页面(或_ExcelTips_网站上的任何其他页面)中描述的宏,我准备了一个特殊页面,其中包含有用的信息。

_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。

本技巧(3288)适用于Microsoft Excel 97、2000、2002和2003。可以在以下功能区中为Excel的功能区界面(Excel 2007及更高版本)找到本技巧的版本: