我有以下代码,我不知道为什么Excel在Enum
子例程中看不到Test2()
类型(我已声明):
Private Sub Test1()
Dim test_name As Variant
End Sub
Private Enum rlcRollercoasterState
rlcRollercoasterDisabled
rlcRollercoasterEnabled
rlcRollercoasterBroken
rlcRollercoasterMissing
End Enum
Private Sub Test2()
Dim var1 As Variant
Dim rlcRC1State As rlcRollercoasterState ' User-defined type not defined
End Sub
如果我在Test1()
类型声明后复制Enum
子例程,Excel会识别rlcRollercoasterState
中的Test1()
类型。
如果我注释掉Test1()
子例程,则Excel会识别rlcRollercoasterState
中的Test2()
类型。
为什么Excel无法在rlcRollercoasterState
子例程中看到Test2()
类型?
答案 0 :(得分:10)
在运行代码之前始终“调试/编译VBAProject”(Alt-dl)。在您的示例中,它给出了错误。编译错误说它需要模块开头的声明语句。