2
我有幾個excel加載項在打開現有工作簿時無法加載。以下是我在嘗試診斷時注意到的一些相關事實和事情:Excel加載項有時不加載
- 這些是常規的excel加載項,而不是COM加載項。
- 從程序菜單打開excel時加載項始終會加載。
- 從電子郵件/共享驅動器/個人驅動器打開工作簿時,加載項不會加載〜10-20%的時間。
- 我無法一致地複製該問題。有時打開相同的工作簿將加載加載項,有時它不會。
該問題可能與其中包含安裝程序的工具包之一相關。 (這個插件背後的想法是它可以發送給用戶,並且可以通過打開來安裝它,然後,一旦它安裝在AddIns文件夾中,當加載項加載時它不再執行任何操作)。
Private Sub Workbook_Open() If Right(ThisWorkbook.Path, 6) <> "AddIns" Then Dim blRegister As Boolean Dim ThisAddIn As AddIn Application.DisplayAlerts = False On Error Resume Next ThisWorkbook.Sheets("Installing").Activate Application.AddIns("Toolkit").Installed = False ThisWorkbook.SaveAs "Z:\AppData\Microsoft\AddIns\ToolKit.xlam", AccessMode:=xlExclusive, ConflictResolution:=Excel.XlSaveConflictResolution.xlLocalSessionChanges, FileFormat:=55 On Error GoTo 0 blRegister = Application.RegisterXLL("Z:\AppData\Microsoft\AddIns\ToolKit.xlam") Set ThisAddIn = Application.AddIns.Add("Z:\AppData\Microsoft\AddIns\ToolKit.xlam") ThisAddIn.Installed = True MsgBox "Thanks for Installing the Toolkit!" ThisWorkbook.Close False Application.DisplayAlerts = True End If End Sub
任何幫助或洞察力將不勝感激。謝謝!
所以你假設「Z:\」總是出現在所有計算機上並且可以訪問?通常,AddIns與操作系統(C:\)存儲在分區中。 – PatricK
正確,在這種情況下Z:可在所有計算機上訪問(相當於C:驅動器) – user3738961
可能需要在SaveAs之前執行更多操作。當AddIns(「Toolkit」)。IsOpen = True',然後是'Application.EnableEvents = False'時,可能需要關閉AddIns(「Toolkit」).Name指的插件工作簿, ThisAddIn.Installed = True',然後在'ThisWorkbook.Close'之前'Application.EnableEvents = True'。事情是,除非每個步驟都使用'Debug.Print',否則無法確定它失敗的位置。 – PatricK