我有几个Excel工作簿。它们都共享相同的宏模块。我想要实现的是在一个工作簿中编辑一个模块而不必编辑其他工作簿中的相同模块。如何将VBScript宏导入Excel工作簿?
当然,我的第一步是导出保存在.bas文件中的模块。但问题是我无法在加载时导入它们。
我试过这样:
Private Sub Workbook_Open()
Set objwb = ThisWorkbook
Set oVBC = objwb.VBProject.VBComponents
Set CM = oVBC.Import("C:\Temp\TestModule.bas")
TestFunc
End Sub
有与内容相同的目录一TestModule.bas:
Function TestFunc()
MsgBox "TestFunc called"
End Function
当打开工作簿,将出现一个编译错误:Sub or Function not defined
。如果我手动导入模块,一切正常。
感谢您的任何建议。
有你考虑将你的代码分解成一个插件? –
不,我认为导入模块会容易得多。 –
VBScript或VBA?或者两者兼而有之??他们不一样... –