我有几个Excel工作簿,它们都共享相同的宏模块。我想要实现的是,在编辑一个工作簿中的一个模块时,不必在其他工作簿中编辑相同的模块。
自然而然,我的第一步是在保存时将模块导出为.bas文件。但问题是我无法在加载时导入它们。
我尝试过这个方法:
打开工作簿时,会出现编译错误:
谢谢您的任何建议。
自然而然,我的第一步是在保存时将模块导出为.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
打开工作簿时,会出现编译错误:
未定义子程序或函数
。如果我手动导入模块,则一切正常。谢谢您的任何建议。