我在Excel VBA宏中定义类时遇到一个奇怪的问题。
要执行此操作,请转到 Excel→开发人员(选项卡)→Visual Basic (打开新视图)。在这个新视图中,我执行项目名称→插入→类模块,并创建一个新文件。
然后我尝试在这个文件中创建一个简单的类,如:
Class VirtualWindow
Public Sub Class_Initialize()
Debug.Print "Class_Initialize"
End Sub
Public Sub Class_Terminate()
Debug.Print "Class_Terminate"
End Sub
End Class
End Class
是红色的,这意味着它不行,当我尝试运行它以查看它抛出的错误时,它会给我"无效的外部程序"错误。我不明白问题出在哪里。
答案 0 :(得分:1)
你不需要这里的A
和B
(因为它是Visual Basic for Applications,而不是Visual Basic 6:VB vs. VBA)你可以在属性字段:
在此之后,您可以从另一个函数或类创建该类的实例:
Class VirtualWindow
答案 1 :(得分:1)
你认为VB6语法与另一种语言混合在一起。 您不必在代码中放置“Class VirtualWindow”和“End Class”。 只是:
Public Sub Class_Initialize()
Debug.Print "Class_Initialize"
End Sub
Public Sub Class_Terminate()
Debug.Print "Class_Terminate"
End Sub