嗨我想添加一个参考programnatically按照:How to Add/Remove reference programmatically?如何以编程方式将.xlam插件(作为对象)添加到vba中?
但是,我希望以编程方式添加的引用是opensolver.org的.xlam文件。
Sub AddWS()
'Create a reference to Windows Script Host, '
'where you will find FileSystemObject '
'Reference name: "IWshRuntimeLibrary" '
'Reference Name in references list: "Windows Script Host Object Model" '
ReferenceFromFile "C:\Users\path\OpenSolver2.8.5_LinearWin\OpenSolver.xlam"
End Sub
和功能:
Function ReferenceFromFile(strFileName As String) As Boolean
Dim ref As Object
MsgBox (strFileName)
'On Error GoTo Error_ReferenceFromFile
'References.AddFromFile (ref)
'ref = strFileName
'vbProj.References.AddFromFile strFileName
References.AddFromFile (strFileName)
MsgBox (strFileName)
ReferenceFromFile = True
Exit_ReferenceFromFile:
Exit Function
Error_ReferenceFromFile:
ReferenceFromFile = False
Resume Exit_ReferenceFromFile
End Function
,但我得到的对象错误424:
用下面的代码所以 “对象需要” 就行了:
References.AddFromFile (strFileName)
它是因为我不知道如何:
a。将.xlam文件设置为对象 b。将.xlam文件转换为.ocx文件,以便将其读取并添加到引用。
有没有人对如何自动编程的OpenSolver.xlam从任何随机位置添加到Microsoft Excel任何建议*
*对于我来说,如果我粘贴包含在.xlam文件夹正常工作:?
C:\Program Files (x86)\Microsoft Office\root\Office16\Library
然后手动打开它,但我需要我的代码的用户也能够从mac运行它,而不需要他们在我从另一个模块调用它之前手动添加opensolver作为参考。
如下所述,succesfull代码的确将OpenSolver.xlam
添加到引用中,但我似乎无法以编程方式在vba> tools>引用中标记复选框。
有没有人对代码有任何建议,它会在引用中的Opensolver
之前自动标记该复选框,一旦它被添加了?
不添加.xlam文件作为参考 - 您需要将它们添加为Excel加载项。 – Comintern
谢谢,我现在要阅读。 –