最好的方法来保护Excel VBA代码?

我已经把一个简单的Excel数据库放在一起,执行一些macrosfunction,我需要将这个数据库分发给几个人 – 但是他们不能看到macrosfunction是如何工作的(愚蠢的规则我必须遵循!)。 达到这个目标的最好方法是什么?

我做了一些研究,发现了两种方法:

  • 密码保护VBA项目 ; 但是显然这很容易在网上使用现成的工具来打破(这对我发送这个macros的人来说是最有利的,所以我几乎100%肯定他们会尝试进入它..因此密码保护似乎不足够。

  • 转移到一个完全编译的语言,如C ++ ; 我的技能是非常有限的Excel和Access VBA,所以这是理想的解决scheme; 是不是我的解决scheme:(

还有其他的方法吗? 我想有一个“主Excel文件”的所有macros,然后发送“儿童”数据库的最终用户,并有“儿童”数据库连接到“主” – 是这样的可能吗? 通过托pipe网上的主人,甚至发送最终用户的主人,但使其完全无法访问,除非由“儿童”数据库访问?

您可以创build自动化添加。

自动化附加function提供了几个优点

  • 执行速度在VB6中编写的一个自动化添加编译器被编译为本地机器代码,其运行速度比解释的VBA语言快得多。

  • 安全性 :与XLA插件不同,您绝不会将源代码分发给最终用户。 如果您的代码具有专有信息或知识产权价值,则可以在您的计算机上安全地进行保护。 它永远不会分发给用户。 你的代码永远不会被破坏。

http://www.cpearson.com/excel/automationaddins.aspx