2011-02-26 36 views
2

我創建了PowerPoint 2007/2010 VBA加載項(.ppam)模塊中的某些代碼。我還添加了一個XML功能區(不重要,但它顯示該文件實際上是在PowerPoint中打開的)。我可以點擊我創建的功能區中的按鈕,它將從我的模塊執行代碼。涼。PowerPoint 2007/2010 VBA ppam加載項在打開時不顯示在VBA編輯器中

當我打開VBA編輯器(ctrl + F11)時,不顯示加載項。事實上,如果我沒有打開其他文檔,我甚至不能打開編輯器。我已經在PowerPoint 2007和2010中嘗試了這種方法。

如何編輯我已經創建的PowerPoint插件的代碼?我在Excel中製作了許多VBA加載項,但也許PowerPoint不同(我瘋了)?

回答

4

您不能直接編輯.ppam,因爲它是「編譯」的。這樣做的方法是將所有代碼/自定義保存在.pptm中(並確保將.pptm保存爲.pptm),並且當您想將其作爲加載項進行測試時,請執行「另存爲...」。 「到.ppam然後加載它。不滿意呢?回到您的.pptm並在那裏進行更改。

順便說一句,如果你不想使用Ribbon只是爲了確保它已經加載的加載項,只需使用一個AutoOpen宏(在任何模塊中),如:

Sub Auto_Open() 
    MsgBox "My add-in has loaded" 
End Sub 

你可以一旦您對加載項滿意,稍後再刪除該AutoOpen宏。

+1

Phew。所以我並不瘋狂。我想知道爲什麼PowerPoint團隊決定讓.ppam不可編輯,而Excel允許編輯.xlam。我聽說開發團隊並不總是互動或爭取一致性(例如看看Publisher)。 MS需要這篇文章的知識庫文章。 – ak112358 2011-02-27 18:45:57

+0

這有點奇怪,但它總是這樣,所以我習慣了:)現在嘗試Word,你需要做的只是添加一個.dotm到啓動文件夾,瞧,你已經現在有一個插件... – 2011-02-28 06:05:26

8

這裏的派對遲到了,但爲了完整起見,還有一個非常有用的技巧可能讓人們意識到。

  1. 關閉PPT,如果它的運行
  2. 在註冊表編輯器,進入HKCU\Software\Microsoft\Office\xx.0\PowerPoint\Options其中xx.0是11.0 Office 2003中,12.0的Office 2007,14.0爲Office 2010
  3. 添加DebugAddinsDWORD=1
  4. 退出註冊表。

加載項現在將出現在IDE中;你可以修改它們,運行它們,測試它們,除了保存它們之外,基本上做的都是它,所以在你的代碼被調試之後,導出你改變的所有模塊/表單/類,以便將它們導入到包含你的代碼的PPT/PPTM中並再次保存爲加載項。

這可以節省數小時的調試時間/ tedium。

相關問題