【问题标题】:MS Office Add OnMS Office 插件
【发布时间】:2010-11-14 23:56:27
【问题描述】:

我想在 MS Office 中添加某些功能。目前,我正在寻找 VBA 来开发它。但是,运行宏似乎需要禁用安全性。这意味着如果我分发 VBA 程序,其他人需要启用宏才能运行。 (安全问题)

现在的问题是,我如何分发我编写的 VBA?例如。在 .exe 文件中?还有其他方法可以创建这个插件吗?

我为 MS Word 下载了一些插件,它似乎是用 C++ 编写的,并且是 .dll 格式。

谢谢。

【问题讨论】:

    标签: vba ms-office


    【解决方案1】:

    即使在“高”安全模式下,您也可以在文档/模板/加载项中运行宏,如果:

    • VBA 项目经过数字签名
    • 用户同意“信任”数字签名的发布者

    用户第一次运行使用您的数字签名签名的宏时,他们会收到提示“宏由 YourCompanyName 签名 - 您是否要信任来自此发布者的所有加载项”。如果他们点击“是”,他们将不会再次看到提示 - 您的宏将运行。

    有关如何创建数字签名的详细信息,请参阅this link

    【讨论】:

      【解决方案2】:

      Visual Studio Tools for Office (VSTO) 允许您使用任何 .NET 语言(包括 Visual C++)创作 Microsoft Office 扩展。这样的扩展确实会编译为 DLL 文件,并且在客户端机器上安装后,它们不需要用户关闭任何额外的安全警告。您需要 Visual Studio 2005/2008 Professional 才能使用 VSTO 框架。

      Wikipedia 有更多关于 VSTO 的信息,包括与 VBA 的比较。 Amazon 似乎也有大量关于该主题的书籍。

      【讨论】:

      • 如果我要使用VSTO,我还需要在程序中进行数字签名吗?
      • VSTO 正在实现,但它仍然比在 VBA 中开发要困难得多
      • 而且更慢....codematic.net/Excel-development/Excel-Visual-studio/… 比 VBA 和 20x C++ 高出 10 倍 但既然是未来,值得考虑 :) 我知道我的 VBA 工具包主要由我在过去 10 年。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-19
      • 1970-01-01
      • 2018-11-17
      相关资源
      最近更新 更多