我被提供了一个作为 .ppam 文件的 powerpoint 加载项和另一个作为 .xslm 文件的 Excel 加载项。加载项的工作很棒,但我想根据一些内部要求自定义它们。
我的问题是 - 如何打开 .ppam 文件(我理解为编译版本)背后的源代码以便能够执行自定义。
我被提供了一个作为 .ppam 文件的 powerpoint 加载项和另一个作为 .xslm 文件的 Excel 加载项。加载项的工作很棒,但我想根据一些内部要求自定义它们。
我的问题是 - 如何打开 .ppam 文件(我理解为编译版本)背后的源代码以便能够执行自定义。
如果它是 PPAM 文件,它是在 PowerPoint 中从保存为加载项的 PPTM 文件创建的。
虽然您可以“就地”编辑加载的加载项以进行测试,但您不能编辑然后保存它们。但是您可以导出加载项的模块,然后将它们导入新的 PPTM 文件或在两者之间复制/粘贴代码。
为了访问已加载加载项的模块/代码,您需要更改注册表。
重要提示:首先退出 PowerPoint。
然后转到:
HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\PowerPoint\Options
(那就是 PPT 2010;用 16.0 代替 14.0 代替 PPT 2016/365 和 PPT 2019,用 15.0 代替 PPT 2013,用 12.0 代替 PPT 2007 等等……没有 13.0)
添加一个新的 DWORD 值: DebugAddins = 1
重新开始PPT;现在您加载的加载项将出现在 VBA IDE 中。如果它们没有密码保护,您将能够打开它们,进行编辑以进行测试,并导出模块或复制/粘贴以在新的 PPTM 文件中使用。
确保导出您经常更改的任何模块;如果您退出 PPT 或它崩溃,您将丢失自上次保存以来的所有更改。
除了 Steve Rindsberg 的完美解决方案,您还可以执行以下操作来传输自定义功能区属性:
OLD.ppam
和NEW.pptm
。OLD.ppam
并NEW.pptm
使用Office RibbonX Editor。NEW.pptm
文件下,customUI14.xml
通过单击插入 --> Office 2010+ 自定义 UI 部件添加一个条目。customUI14.xml
将 的部分的内容复制到 中的OLD.ppam
部分NEW.pptm
。OLD.ppam
使用 7zip 或类似软件在 Windows 资源管理器中提取文件。您将在提取的文件夹中找到图像OLD/customUI/
。customUI14.xml
在NEW.pptm
. 然后,从插入菜单中插入图标。您可以一次选择所有项目。NEW.pptm
在 Office RibbonX 编辑器中保存文件并关闭它。NEW.pptm
在 PowerPoint 中打开并将其另存为NEW.ppam
.