Excel,Visual Basic编辑器,枚举类型声明 - 未定义的用户定义类型

时间:2013-03-22 00:37:01

标签: excel excel-vba excel-2007 declaration vba

我有以下代码,我不知道为什么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()类型?

1 个答案:

答案 0 :(得分:10)

enter image description here

在运行代码之前始终“调试/编译VBAProject”(Alt-dl)。在您的示例中,它给出了错误。编译错误说它需要模块开头的声明语句。