我從spreadsheetguru發現了這段代碼。代碼的目的是激活Excel 16.0庫。我希望能夠在我的代碼之前添加它,以便它自動添加庫,然後運行需要它的其餘代碼。現在我有兩個潛艇。一個是我在這裏的Private Sub,另一個是Public Sub和我的宏的其餘部分。現在,當我運行宏時,它會在此處運行代碼psote,然後停止。然後,如果我再次點擊它將運行下一個子。我有什麼辦法讓這一切都只需點擊一下?也許通過把它全部分成一個子組,或者我不知道的其他私人/公共子組合?如何讓這段代碼完全在一次點擊中運行?
謝謝!
Private Sub ActivateReferenceLibrary()
'PURPOSE: Activate Specific Object Libraries
'Error Handler in Case Reference is Already Activated
On Error Resume Next
'Activate PowerPoint Library (version 2.9)
Application.VBE.ActiveVBProject.References.AddFromGuid _
GUID:="{00020813-0000-0000-C000-000000000046}", _
Major:=0, Minor:=0
'Reset Error Handler
On Error GoTo 0
End Sub
你嘗試過這麼遠嗎?你有沒有嘗試從另一個子調用ActivateReferenceLibrary?在調用子例程時,請參閱此處以瞭解有關範圍的一些信息https://www.thespreadsheetguru.com/blog/2014/3/5/explaining-private-vs-public-claclarations – QHarr
您僅發佈的代碼運行一個命令,沒有別的,所以你爲什麼期望它做更多? – jsotola
@QHarr這些是我嘗試的三種方式:[從ActiveReferenceLibrary調用](https://pastebin.com/3Fk4DnnC),[從averageScoreRelay調用](https://pastebin.com/7nVweNPr),[No Call,just Public Subs](https://pastebin.com/Eq1pqVjc)。這些都沒有工作。他們只是給我錯誤,如:Sub或Function未定義,用戶定義類型未定義,或者它沒有給我錯誤,只是運行ActiveReferenceLibrary並停止。 – Pinlop