0
我在PowerPoint中有一個偶爾更新的VBA加載項。我在VBA中編寫了一個代碼,每個星期一有一個檢查是否存在更新版本的加載項。如果是這樣,PowerPoint會自動更新加載項。到目前爲止,我有這樣完成的:使用VBA刪除Powerpoint中的加載項
- 停用舊的加載項在PowerPoint
- 刪除舊的附加在微軟的加載項文件夾
- 複製新添加到Microsoft的添加 - 在文件夾
- 激活添加在PowerPoint
但是,我似乎新的無法找到合適的命令來刪除舊的外接在PowerPoint。舊的加載項仍在PowerPoint的可用加載項中,並且PowerPoint還將其列在不活動的應用程序加載項下。
這是代碼的一部分,首先停用加載項,然後嘗試從PowerPoint中刪除它。
Dim oAddin As AddIn
For Each oAddin In Application.AddIns
If Left(oAddin.name, 16) = "PPT ACO Add-in V" Then
oAddin.Loaded = msoFalse
Kill (oAddin) '<-- these is the line of Code that doesn't execute
End if
Next oAddin
程序的工作,但一段時間後,我有一堆不活動的加載項在PowerPoint奠定左右,這將是非常令人困惑的用戶。
非常感謝你的幫助。
湯米
Kill(oAddin)不會工作(在可能只是拋出錯誤;你有錯誤恢復下一個設置,沒有錯誤處理?)重新啓動PPT後,舊的加載項仍然列在Inactive Addins ? Kill(xx)需要一個完全路徑的文件名並將刪除該文件;嘗試殺死(oAddin.Fullname)。但首先使用oAddin.Registered = msoFalse – 2014-09-30 14:29:59
感謝您的意見。是的,Kill確實產生了錯誤,因此我在下一次使用「錯誤恢復」繼續執行子例程。新的加載項正在加載,而舊的加載項放在不活動的列表中。但是,PowerPoint重新啓動後,新的加載項在PowerPoint中消失,並且舊的加載項再次加載。我嘗試了以下命令,但它們都沒有工作:殺死oAddin.FullName,殺死(oAddin.Path),oAddin.AutoLoad = msoFalse,oAddin.Application.Visible = msoFalse,oAddin.Registered = msoFalse,oAddin.Application。 Visible = msoFalse,Kill oAddin,Kill(oAddin) – user2999959 2014-09-30 15:30:58
奇怪的是,我以前能夠從Microsoft的默認加載項文件夾中刪除舊的Add'in。現在,部分代碼不再適用 – user2999959 2014-09-30 15:32:08