编辑.ppam文件以自定义加载项

时间:2013-07-10 11:49:30

标签: excel-vba powerpoint-vba vba excel

我为powerpoint提供了一个加载项作为.ppam文件,另一个加载项为Excel作为.xslm文件。加载项的工作很好,但我想根据一些内部要求对它们进行自定义。

我的问题是 - 如何打开.ppam文件(我理解为已编译版本)背后的源代码,以便能够执行自定义。

2 个答案:

答案 0 :(得分:20)

如果它是PPAM文件,则它是在PowerPoint中从保存为加载项的PPTM文件创建的。

虽然您可以“就地”编辑已加载的加载项以进行测试,但您无法编辑然后保存它们。但是您可以导出加载项的模块,然后将它们导入到新的PPTM文件中,或者在两者之间复制/粘贴代码。

为了访问加载的加载项的模块/代码,您需要进行注册表更改。

重要提示:先退出PowerPoint。

然后转到:

HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\PowerPoint\Options

(那将是PPT 2010;用PPT 2016/365替代16.0代替14.0,PPT 2013代替15.0,PPT 2007代替12.0等等......没有13.0)

添加新的DWORD值:DebugAddins = 1

再次开始PPT;现在,加载的加载项将出现在VBA IDE中。如果它们没有受密码保护,您将能够打开它们,进行编辑以进行测试,并导出模块或复制/粘贴以便在新的PPTM文件中使用。

请务必导出您经常更改的所有模块;如果您退出PPT或崩溃,您将丢失自上次保存以来的任何更改。

答案 1 :(得分:0)

如果您还想复制/修改自定义功能区

除了Steve Rindsberg的完美解决方案之外,您还可以执行以下操作来转移自定义功能区属性:

  1. 如Steve的帖子所述,从原始.ppam文件和修改后的.pptm文件开始。在下文中,我将它们称为OLD.ppamNEW.pptm
  2. 使用Office RibbonX Editor同时打开OLD.ppamNEW.pptm
  3. NEW.pptm文件下,通过单击插入-> Office 2010+自定义UI部件添加一个customUI14.xml条目。
  4. 将内容从customUI14.xml的{​​{1}}部分复制到OLD.ppam中的内容。
  5. 获取图标:使用7zip或类似文件在Windows资源管理器中提取NEW.pptm文件。您将在提取的文件夹OLD.ppam中找到图像。
  6. 返回Office RibbonX编辑器,在OLD/customUI/中单击customUI14.xml。然后,从“插入”菜单中插入图标​​。您可以一次选择所有项目。
  7. 在Office RibbonX编辑器中保存文件NEW.pptm,然后将其关闭。
  8. 要创建外接程序,请在PowerPoint中打开NEW.pptm并将其另存为NEW.pptm