如何以VBA或程式自動設定引用項目(參照、參考) How to Add/Remove reference programmatically? Use VBA to install Reference
請問設定引用項目這項動作可以用程式碼寫出來嗎?亦即在程式執行前,可否讓其自行檢測引用項目是否有漏掉的情況。感謝您。
請問微軟的這個方法可行嗎?不知先生有無好辦法?我還沒試。稍後再試。還望先生有空時能與指教,我有新得亦必奉上。感謝您。
http://support.microsoft.com/kb/308340/zh-tw
http://support.microsoft.com/kb/308340/zh-tw
看來不行,仍要先引用「Microsoft Visual Basic for Applications Extensibility 5.3」也,這樣還不是得手動引用?還是有設「Microsoft Visual Basic for Applications Extensibility 5.3」為預設引用值的辦法。
再試了。
再試了。
還有執行上式前,也得先將信任中心的「巨集設定」先設為「信任存取VBA專案物件模型」才行。實在仍屬笨拙....orz
還是這個方法好用呀。可以寫在打開活頁薄事件上看看,我等下試,成功了就不再回了。
On Error Resume Next
Application.VBE.ActiveVBProject.References.AddFromFile (引數為參照引用檔之全檔名(路徑+檔名+副檔名))
因為如我要加入Word,會出現無法進入中斷模式,故On Error Resume Next此行必要。
如何找到要參照引用的檔案的全檔名,我的方法是在設定引用項目中查看想要引用的項目,下方會有「位置:」資訊,若位置太長將無法看到全檔名的字串,則用AutoIt Window Info ,打開後,將滑鼠移到此「位置:」資訊此即可.
http://www.mrexcel.com/forum/excel-questions/590567-use-visual-basic-applications-install-excel-reference.html
On Error Resume Next
Application.VBE.ActiveVBProject.References.AddFromFile (引數為參照引用檔之全檔名(路徑+檔名+副檔名))
因為如我要加入Word,會出現無法進入中斷模式,故On Error Resume Next此行必要。
如何找到要參照引用的檔案的全檔名,我的方法是在設定引用項目中查看想要引用的項目,下方會有「位置:」資訊,若位置太長將無法看到全檔名的字串,則用AutoIt Window Info ,打開後,將滑鼠移到此「位置:」資訊此即可.
http://www.mrexcel.com/forum/excel-questions/590567-use-visual-basic-applications-install-excel-reference.html
Use VBA to install Excel Reference
How to Add/Remove reference programmatically?
Private Sub Workbook_Open()
Sub AddReference()
On Error Resume Next
With Application.VBE.ActiveVBProject.References
.AddFromFile "C:\Program Files (x86)\Common Files\microsoft shared\VBA\VBA6\VBE6EXT.OLB"
.AddFromFile "c:\program files\microsoft office\office14\msword.olb"
End With
'http://www.mrexcel.com/forum/excel-questions/590567-use-visual-basic-applications-install-excel-reference.html
''http://support.microsoft.com/kb/308340/zh-tw
' Dim vbProj As VBProject
'
' Set vbProj = ActiveWorkbook.VBProject
' 'vbProj.References.AddFromFile "C:\TestFiles\Refme.dot"
' vbProj.References.AddFromFile "c:\program files\microsoft office\office14\msword.olb"
''按一下 [工具] 功能表上的 [設定引用項目],然後將參考加入 Microsoft Visual Basic for Applications Extensibility 5.3 程式庫中。此程式庫包含參考 VBA 專案的物件。
''"C:\Program Files (x86)\Common Files\microsoft shared\VBA\VBA6"
End Sub
End Sub
Sub AddReference_old()
On Error Resume Next
'
' Dim vbProj As VBProject
'
' Set vbProj = ActiveWorkbook.VBProject
' vbProj.References.AddFromFile "C:\Program Files\Microsoft Office\Office14\MSWORD.OLB"
Application.ThisWorkbook.VBProject.References.AddFromFile "C:\Program Files\Microsoft Office\Office14\MSWORD.OLB"
'Application.ThisWorkbook.VBProject.References.VBE.VBProjects
End Sub