Excel で .net コード アセンブリを使用するための Rich Newman のガイドに従っています。次のような MyProperty というプロジェクトで MyPro[p という小さなテスト クラスを作成しました。
Imports System.Runtime.InteropServices
Public Class MyProp
Public Function GetData() As String
Return "Hello World"
End Function
End Class
それは正常にコンパイルされ、CLSID を regedit に入れ、(ブラウズして TLB を見つけた後) それ自体を Excel の参照に追加できるようにします。ただし、実際には使えません。VBAでこれを試しました:
Private Sub test()
Dim test As New MyProperty.MyProp
MsgBox test.GetData()
End Sub
どちらが返されますか:
「クラスがオートメーションをサポートしていないか、期待されるインターフェイスをサポートしていません」
このエラーは、 GetDataが見つからないか、間違って呼び出していることを意味していると思います。TLB を再度追加しましたが、効果はありません。
何か案は?