これに関するいくつかの投稿を見てきましたが、これまでのところ解決策はありません。IKVM経由で .NET DLL に変換する .jar ファイルがあります。DLL のメソッドを Excel VBA 環境内で使用できるようにする方法を見つけようとしています。ここに詳細があります。
1.) IKVM をインストールし、その DLL を GAC に登録しました
2.) IKVM を実行して、.net .dll (mytest.dll) を作成しました。
ikvmc mytest.jar
3.) 新しい .dll を登録しました
regasm mytest.dll
4.) ここから、VB.NET プロジェクトを作成し、プロジェクトへの参照として mytest.dll と IKVM.OpenJDK.Core.dll を追加しました。その後、.NET の .dll 内のメソッドにアクセスできます。これは素晴らしい!
5.) 私が本当にやりたいことは、VBA でも .dll を使用できるようにすることです。最初は、vba は .net ライブラリであるため、.dll を直接受け入れませんでした。タイプ ライブラリを作成しようとしました。
regasm /codebase /tlb mytest.dll
これにより、適切な .tlb ファイルが作成されましたが、ライブラリに厳密な名前が付けられていないという警告がスローされました。
6.) 次に、.tlb を参照として vba エディターにロードしました。これは機能しますが、メソッドにアクセスしようとすると何も表示されません。同様に、ライブラリのオブジェクト ビューアを見ると、2 つのクラスが表示されますが、それらのクラスのメンバーは表示されません。
さらに、おそらく VBA 内の IKVM.OpenJDK.Core.dll も参照する必要があると思います。ただし、.NET .dll であるため、それもできません。
.jar ファイルを VBA で使用できるものに変換することに成功した人はいますか?