轻松删除 Excel 2003 宏

轻松删除 Excel 2003 宏

我使用的是 Excel 2003,每周有几天需要将一些工作簿发送给一些收件人。这些工作簿中有宏,我不希望接收文件的人能够查看这些宏。

我知道宏可以用密码保护,但我也知道这种密码保护很弱,并且存在几种工具可以在不知道密码的情况下访问宏。

我认为让人们永远无法访问我的宏代码的最好方法就是将其完全删除。

我知道我可以将工作表复制粘贴到新的 excel 文件中并将其另存为新文件,该文件不包含任何宏,或者我可以复制该文件并手动删除每个模块和类。我有很多课程,所以这可能很耗时。但是,我发现这个选项很耗时,而且容易出错。

将我的宏放入 XLA 文件也不是一种选择,因为即使在完全修补的 Excel 2003 上,Excel 在使用 XLA 文件时也容易崩溃,而相同的代码在 XLS 文件本身中却可以正常工作。

我认为最好的选择是有一个可以轻松删除宏的命令行程序,但在谷歌搜索之后,似乎不存在这样的程序。

您还看到其他选择吗?

谢谢。

答案1

我在浏览网站时发现了这个未解答的问题。现在你可能已经解决了这个问题,但以防万一。

我解决这个问题的方法是将所有宏保存在不分发给客户的工作簿中。

打开另一个工作簿或对另一个工作簿进行操作很容易。如果在外面有With OtherWorkBook... End With,则中间的代码与在目标工作簿中的代码相同。

我使用这种方法从未失败过。

答案2

我在一台已有五年历史的 Dell Latitude 上的 Windows XP 上运行 Excel 2003,每天加载二十 (20) 个 xlas 都没有遇到任何问题。

正确的答案是将代码与 UI 和数据分开,不仅针对此应用程序,还针对您编写的每个应用程序。最好使用插件来实现这种分离。但插件只是翻转一位的常规 Excel 文件。因此,如果您不喜欢 xla,只需将所有代码放在 xls 中,将 UI 放在另一个 xls 中,将数据放在其他地方。

xls 文件中的代码可以像插件一样操作其他 xls 文件。但实际上,只需使用 xla,因为您遇到的任何崩溃都不是因为它是 xla。

相关内容