我为Excel编写了一个XLA加载项。此添加包括一个类模块。我想知道如何公开这个类模块以供使用。我已经四处搜索并找到了使用Visual Studio的方法,但遗憾的是我没有Visual Studio。有没有办法只从XLA做到这一点?
答案 0 :(得分:8)
您可以在XLA中创建一个返回该类实例的公共函数。然后,任何引用XLA的工作簿都可以调用该函数。假设您有Book2,其中包含您要使用Class1的Class1和Book3。将Class1 Instancing属性更改为Public Not Creatable(在类模块中为F4)。
在Book2中的标准模块中创建一个函数
Public Function InstantiateClass1() As Class1
Set InstantiateClass1 = New Class1
End Function
在Book3中,调用函数
Public Sub DoStuff()
Dim clsClass1 As Book2Project.Class1
Set clsClass1 = instantiateclass1
clsClass1.prop = "something"
Debug.Print clsClass1.prop
End Sub
在此示例中,Class1有一个名为prop的属性。 Book2的VBProject名称已更改为Book2Project。