VB6/VBA で使用できるクラス ライブラリを作成しようとしています。ここで受け取ったいくつかの支援により、私は次のことを行いました。
- Visual Studio 2010 Express でクラス ライブラリ プロジェクトを作成し、コードをクラス モジュールに配置しました。
- 「インターフェース」と呼ばれるこの素晴らしいものが必要であることを学びました...それらの1つを作成しました:)
- プロジェクトのプロパティを開き、「アセンブリ情報」に移動し、「COM を可視化する」にチェックを入れました。
- 「高度なコンパイル」オプションに移動し、.Net 2.0 をターゲットにしました (これは非常に単純なコードです)。
- 「システム」以外のすべての参照を削除しました。
- プロジェクトをビルドし (警告やエラーなし)、DLL を Bin フォルダーから C:\Windows\System32\ にコピーしました。
- RegAsm /tlb を実行しました。すべてがうまくいっているようです。
急ごしらえのテストを実行するために Excel を開いたところ、TLB が利用可能になりましたが、2 つの問題があります。
- Object Browser/Intellisense でクラスとインターフェイスの両方を確認できます。
- いずれかのオブジェクト ( ) のインスタンスを作成しようとすると
Set obj = New MyObj
、次のエラーが表示されます。
自動化エラー システムは、指定されたファイルを見つけることができません。
オブジェクトへの参照を設定でき、Intellisense はそれを見ることができます。実際にオブジェクトを作成しようとすると、そのエラーが発生します。私はステップを逃しましたか?