1

クラスとオブジェクトに関する一般的な理解の問題があります。私がやろうとしていることは非常に単純ですが、エラーが発生しています。以下のコード例では、「Call tables.MethodInCTables」という行が正常に実行される場合もあれば、エラー 91 (オブジェクトが設定されていない) が生成される場合もあります。すべての場合において、先の型でメソッドを「見る」ことができるので、コードが「テーブル」インスタンスを認識し、MethodInCTables を「見る」ことがわかります。しかし、実行時エラーが発生します。

Sub MainSub() 
Dim tables as New CTables 
Call tables.MethodInCTables 
End Sub

----クラス モジュール = CTables

Sub MethodInCTables()
 ...do something 
End Sub
4

1 に答える 1

2

CTables タイプを初期化する必要があります。

Sub MainSub()
    Dim tables As New CTables 
    Call tables.MethodInCTables
End Sub

または:

Sub MainSub()
    Dim tables As CTables
    Set tables = New CTables
    Call tables.MethodInCTables
End Sub
于 2012-10-07T21:43:09.200 に答える