VBA excel-有什么方法可以确保用户无法在立即窗口中调用/运行宏?

索非亚

因此,我编写了一个VBA应用程序并锁定了VBAProject(不可查看)。但是,当然,用户仍然可以访问即时窗口(例如,如果他们打开另一个excel文件并单击我的VBAProject,即使已锁定)。尽管我的VBAProject被锁定并且不可见,但是用户在打开另一个excel的情况下仍可以访问我的即时窗口并尝试运行宏或输入一些代码来运行。当然,他们不知道我如何命名宏,但是可能可以运行代码来获取名称列表(过程名称)。那么-可以防止用户在我的VBAProject立即窗口中运行任何代码或调用任何宏吗?

深奥的

简短的答案:使用Private关键字。

更长的答案:保护源代码的唯一方法是永远不要释放它。

长答案是:可以创建一个VBA项目来主动阻止对VBA编辑器的访问。但这是不道德的,除项目密码外,它不保护您的源代码。

考虑一个古老的Workbook.Close恶作剧,它在打开工作簿后立即将其关闭。用户所需要做的就是禁用宏,然后重新打开工作簿。对于您在VBA中编写的任何内容,也是如此。如果您依靠VBA来执行安全性操作,则在禁用宏时安全性将终止。

将其与使用项目密码获得的安全性进行比较。当然,对于大多数开发人员而言,密码破解都是微不足道的,但是这需要更多的精力,并且会阻止大多数临时用户。重要的是,它使您和您的软件保持一致。

关于使用外部工具代替VBA或与VBA结合使用,有一种讨论,但这比您提出的问题要复杂得多。如果恶意软件的行为像您建议的那样,这也将满足术语恶意软件的任何定义。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Excel VBA的立即窗口中显示日语文本

来自分类Dev

从Excel调用Access VBA函数

来自分类Dev

Excel VBA排序宏

来自分类Dev

Excel VBA宏-串联

来自分类Dev

Excel VBA目录方法

来自分类Dev

从Excel / VBA调用Scala函数

来自分类Dev

如何从Excel VBA调用.NET方法?

来自分类Dev

有什么方法可以通过Python调用Excel VBA函数吗?

来自分类Dev

运行Word VBA宏后Excel将无法完全关闭

来自分类Dev

无法使.Offset在Excel VBA宏中工作

来自分类Dev

在Excel VBA的立即窗口中显示日语文本

来自分类Dev

Excel 2010 VBA宏制作Excel冻结

来自分类Dev

Excel VBA排序宏

来自分类Dev

Excel VBA中的范围方法

来自分类Dev

通过VBA运行Excel公式

来自分类Dev

从Excel VBA运行访问模块

来自分类Dev

VBA Excel:用户定义的功能

来自分类Dev

Excel 365 VBA宏

来自分类Dev

ElseIf的Dim无法正常运行(Excel VBA)

来自分类Dev

Excel VBA宏

来自分类Dev

VBA Excel-.Window无法识别打开的Excel窗口

来自分类Dev

Excel VBA宏从VBA编辑器运行,但不从“宏”窗口运行

来自分类Dev

Excel 2007 VBA暂停宏

来自分类Dev

Excel 宏的以下 VBA 代码有什么问题?

来自分类Dev

Excel 中的 VBA 宏 If, Then, Else?

来自分类Dev

Excel VBA:被调用的宏对其他被调用的宏的影响

来自分类Dev

更改事件不调用宏 Excel Vba

来自分类Dev

保存没有宏的 Excel 文件。Excel VBA 代码

来自分类Dev

在VBA中的excel的特定实例中调用excel宏