DOBON.NET どぼん!のVB道掲示板(プログラム)過去ログ

.NETで作ったDLLをVBAで使いたい

●この件についての経験年数:
5年

●どうしたいか:
.NETで作成した、クラスモジュールをコンパイルしてDLL(ActiveXDLL?)をVBAやVB6で使う方法ってあるのでしょうか?
.NET Frameworkの主旨と合っていないのは承知しておりますが、.NETで作成したDLLをExcelなどでも使いたいのです。

何かよい方法はありましたら、教えてください。
>.NETで作成した、クラスモジュールをコンパイルしてDLL(ActiveXDLL?)をVBAやVB6で使う方法ってあるのでしょうか?

あまり詳しくないので断言はできませんが、COMを作成したいということでしょうか?それとも.NETで作成したCOMはVBAやVB6では使えないのでしょうか?
>あまり詳しくないので断言はできませんが、COMを作成したいということでしょうか?それとも.NETで作成したCOMはVBAやVB6では使えないのでしょうか?

返信ありがとうございます。
COMというものを良くわかりませんが、要するにVB.NETで作成した関数などをVBAでも使いたいということなのです。
VB.NETとVBAとでは、構文も違うため、カット&ペーストは効きませんし、できれば関数群などは共通化したいのです。VB6では、ActiveXDLLとかいうのがあり、クラスモジュールに記述した関数をDLL化してレジストリに登録すると、VBAエディターから参照設定で参照し、使用していました。
これと同じであれば、COM(もしかしたらActiveXDLLと同じかもしれませんが・・・)でも構いません。
教えて頂けないでしょうか?
>これと同じであれば、COM(もしかしたらActiveXDLLと同じかもしれませんが・・・)でも構いません。

丁度、私もVB6.0からVB.NETを呼び出したくいろいろ探していたところです。
なかなか見つからず苦労していたのですが、結局マイクロソフトのHPに記述されてました。(ただし英語版。日本語版ではまだないのかなぁ?)
HPとおりのサンプルを作成したら、VB6.0からVB.NETを呼ぶことができました。
ここを参考にされたらと思います。
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dndotnet/html/callnetfrcom.asp?frame=true
>丁度、私もVB6.0からVB.NETを呼び出したくいろいろ探していたところです。
>なかなか見つからず苦労していたのですが、結局マイクロソフトのHPに記述されてました。(ただし英語版。日本語版ではまだないのかなぁ?)
>HPとおりのサンプルを作成したら、VB6.0からVB.NETを呼ぶことができました。
>ここを参考にされたらと思います。
>http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dndotnet/html/callnetfrcom.asp?frame=true

返信が遅くなり、申し訳ありません。
英語にちょっと、苦戦しましたが、何とか目的を達することができました。
ありがとうございました。

DOBON.NET | プログラミング道 | プログラミング掲示板