7

Excel 用の XLA アドインを作成しました。このアドインには、クラス モジュールが含まれています。このクラス モジュールを公開して使用する方法を知りたいと思っていました。私は周りを検索し、Visual Studio でそれを行う方法を見つけましたが、残念ながら Visual Studio を持っていません。XLAだけでこれを行う方法はありますか?

4

1 に答える 1

8

クラスのインスタンスを返す XLA でパブリック関数を作成できます。次に、XLA への参照を持つワークブックは、その関数を呼び出すことができます。Class1 を使用する Book3 と Class1 を含む Book2 があるとします。Class1 Instancing プロパティを Public Not Createable に変更します (クラス モジュールで 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 と呼ばれる 1 つのプロパティがあります。Book2 の VBProject 名は Book2Project に変更されました。

于 2012-04-04T17:21:05.453 に答える