vba - Powerpoint 插件:如何创建可下载的插件来修改功能区和调用宏?
问题描述
我为我的组织创建定制的 Office 解决方案。为此,我创建了 Powerpoint/Excel 模板,其中包含我通过使用自定义 UI 编辑器修改功能区所包含的自定义项- 然后按钮调用我在 VBA 中编写的宏。
现在,我面临的问题是,每当我想修复错误或更新功能时,我都需要不断推出新模板(并手动让人们使用它)。这显然不是最优的。
因此,我想构建一个插件,它:
- 以与自定义 UI 编辑器类似的方式修改功能区
- 可以让我调用 VBA 宏
- 可通过互联网更新
但是,(绝对是因为我是新手)那里的建议似乎有点含糊。
有可能做我要求的吗?
解决方案
Microsoft 有 3 种不同的技术,它们都称为加载项。您熟悉的是原始的基于 VBA 的加载项。该技术可以满足您列表中的第二个要求。但是,没有简单的方法可以直接使用 VBA 修改 Ribbon。可能可以从 Internet 进行更新,但这不是一个容易编程的项目。
第二种技术称为 COM。COM 加载项通常在 Visual Studio 中用 C# 或 Visual Basic(与 VBA 相似但不相同)编写。COM 插件可以修改 Ribbon 并且可以调用 VBA 宏。从 Internet 更新仍然是一个更复杂的问题。使用托管 COM 加载项自定义 Office Fluent 功能区
第三种加载项是 JavaScript 加载项技术,微软目前正在大肆宣传它是下一件大事。他们可以操作一些 UI 元素,但不能操作完整的 Ribbon 模块。他们不能运行 VBA 宏。但它们可以从 Internet 更新。了解 Office JavaScript API