我对VBA比较新,但不是编程。我试图建立一个类的共享实例,并且我一直遇到运行时错误91,它抱怨变量没有被设置。
'A Module which acts as the singleton loader
Option Explicit
Private instance As GroceryDatabase
Public Function sharedInstance() As GroceryDatabase
If instance Is Nothing Then
Set instance = New GroceryDatabase 'Run-time error 91 thrown here
End If
Set sharedInstance = instance
End Function
显然,变量尚未设置,这就是我为其分配新GroceryDatabase的原因。我已经看到很多这个问题的答案归结为试图使用Nothing对象的人,但是当我尝试实例化时,我无法理解为什么会抛出这个问题。
答案 0 :(得分:0)
错误并非特别是由于实例化对象的行,而是由于其构造函数中存在实际上已分配但未设置变量的问题。
这是通过在GroceryDatabase的构造函数中放置断点来发现的。对于未来,我已启用"中断类模块",可在路径工具>选项>常规中找到。现在,按下"调试"立即查明问题。按钮。