|
オブジェクト指向系の言語経験はありますが、
ExcelVBAは初心者の者です。
ExcelVBAでクラスモジュールのプロシージャーの引数に
クラスモジュールを設定する事は可能なのでしょうか?
以下のモジュールを使用すると、
実行時エラー'438'
オブジェクトは、このプロパティまたはメソッドをサポートしていません。
と表示されます。
例:
class1:TestClass
============================
Option Explicit
Private cName As String
Public Property Let name(str As String)
cName = str
End Property
Public Property Get name() As String
name = cName
End Property
============================
class2:ClassHolder
============================
Option Explicit
Public Class As TestClass
Public Sub setClass(ByRef item As TestClass)
Class = item
End Sub
============================
標準モジュール
============================
Sub test(ByVal moji As String)
Dim Class As New TestClass
Dim holder As New ClassFolder
holder.setClass (Class) '←ここでエラー発生
End Sub
============================
ご存知の方がおられましたら、
ご教授願います。
|
|