3

Excelワークシートからデータを読み込み、定義したクラスのオブジェクトに含まれる変数に文字列として保存し、このオブジェクトを定義したクラスのオブジェクトツリーに追加するコードを書いています.

Dim ProdTreeMain As New CProdTree
Dim nR As Range
Dim nnR As Range
Set nR = oXS.Range("A1")
Set nnR = oXS.Range("A1")
dim r as integer
r = 1

Do While Not (nR.Text = "" And nnR.Text = "")
    If CONDITION IS TRUE:

        Dim currProd As New CProduct

        ProdTreeMain.addProduct (currProd) '<-- error 438 "Object doesn't support property or method

    End If
    r = r + 1
    Set nR = oXS.Range("A" & CStr(r + 1))
    Set nR = oXS.Range("A" & CStr(r + 2))

Loop

クラス CProdTree には、参照によってクラス CProduct の入力オブジェクトを取るサブ「addProduct」が含まれています。

Public Sub addProduct(ByRef Prod As CProduct)

一体何が起こっているのですか?クラスが定義され、サブが正しく、サブに渡される変数の型が正しいクラスですが、このエラーが発生します... :/

4

1 に答える 1