トップ回答者
Visual Studio2008 COMクラスをEXCEL2000で使えない

質問
-
こんにちは。お世話になります。
このたび、VisualStuido2008(std)のVB(.NET2.0)にて、COMクラスを作成し、VBS、VB6、EXCEL(VBA)などの言語が使用することを考えています。
とくに変わったメソッドもなく、以下のように作成し、実行機にて、VBS、VB6での動作確認がとれました。
ところが、EXCEL2000(VBA)で使おうとすると、
「ファイル またはアセンブリ名comTest.dll、またはその依存関係の1つがみつかりませんでした」のエラーがでてしまいます。
VBS、VB6で動いているので、コード上の問題はないような気がしているのですが、何が原因でしょうか?
<ComClass(TEST.ClassId, TEST.InterfaceId, TEST.EventsId)> _
Public Class TEST#Region "COM GUID"
' これらの GUID は、このクラスおよびその COM インターフェイスの COM ID を
' 指定します。この値を変更すると、
' 既存のクライアントはクラスにアクセスできなくなります。
Public Const ClassId As String = "3efebe59-3661-4f38-bc92-2325960b1ce6"
Public Const InterfaceId As String = "54787dc5-ab6b-4e47-995a-3694b1dea461"
Public Const EventsId As String = "a77671ca-2a98-4533-b0fc-0b32b840dc7b"
#End Region' 作成可能な COM クラスにはパラメータなしの Public Sub New() を指定しなければ
' なりません。これを行わないと、クラスは COM レジストリに登録されず、
' CreateObject 経由で
' 作成できません。
Public Sub New()
MyBase.New()
End Sub
Public Function GetFolderPath(ByVal folder As Environment.SpecialFolder) As StringReturn Environment.GetFolderPath(folder)
End Function
Public Function GetMyVerSion() As String
Return "1.0.1"
End Function
End Class
回答
-
アースワーム さん、
こんにちは!
フォーラム オペレーターの服部 清次です。
私の方で調べてみましたところ、関連のありそうなサポート技術情報が公開されていました。
● 「Word 2003 および以前のバージョン、または Excel 2003 およびそれ以前のバージョンでは、VBA から.NET Framework 2.0のアセンブリを読み込むことはできません」: http://support.microsoft.com/kb/948461/ja (機械翻訳)
上記のページでは、この問題の原因と解決策について説明されていますので、一度確認されてみてはいかがでしょうか?
なお、こちらのサポート技術情報は機械翻訳となっていますので、、、もし分かりにくい箇所などがありましたら、お気軽にお尋ねください。 (^^;)
こちらの情報がお役に立てることを願っています。
それでは、また! (^_^)/
_______________________________________________
マイクロソフト株式会社 フォーラム オペレーター 服部 清次- 回答としてマーク 高橋 春樹 2009年11月9日 9:17
すべての返信
-
アースワーム さん、
こんにちは!
フォーラム オペレーターの服部 清次です。
私の方で調べてみましたところ、関連のありそうなサポート技術情報が公開されていました。
● 「Word 2003 および以前のバージョン、または Excel 2003 およびそれ以前のバージョンでは、VBA から.NET Framework 2.0のアセンブリを読み込むことはできません」: http://support.microsoft.com/kb/948461/ja (機械翻訳)
上記のページでは、この問題の原因と解決策について説明されていますので、一度確認されてみてはいかがでしょうか?
なお、こちらのサポート技術情報は機械翻訳となっていますので、、、もし分かりにくい箇所などがありましたら、お気軽にお尋ねください。 (^^;)
こちらの情報がお役に立てることを願っています。
それでは、また! (^_^)/
_______________________________________________
マイクロソフト株式会社 フォーラム オペレーター 服部 清次- 回答としてマーク 高橋 春樹 2009年11月9日 9:17