私は (残念ながら) Excel 2000 VBA でアプリケーションを開発しています。カスタム クラス プロパティ、関数、またはサブ デバッグ内で発生したエラーは、プロパティが呼び出された VBA コード内のポイントでエラーが発生したかのようにデバッグされることを発見したと思います。つまり、VBE デバッガーはエラーが発生した Class プロパティのポイントに移動するのではなく、プロパティが最初に入力された場所 (たとえば、Module Sub または Function から) に移動します。最も浅い OO Excel 2000 VBA コードは、エラーの原因となっている命令を見つけるためにすべての Class メソッドを 1 行ずつ実行する必要があるためです。
何か不足していますか、それとも Excel 2000 で対処しなければならない既知のバグですか? これは 2003 年または 2007 年に修正されましたか?
コード例:
'''''''''''''''
'In Module1:
Public Sub TestSub1()
Dim testClass As Class1
Dim testVariant As Variant
Set testClass = New Class1
testVariant = testClass.Property1 'Debugger takes me here...
End Sub
''''''''''''''
' In Class1
Property Get Property1() As Variant
Err.Raise 666, , "Excel 2000 VBA Sux!" 'But error is actually thrown here.
End Property