我不确定之前是否曾经问过,但我找不到它.假设我有一个带有局部变量的过程.通常,该函数在函数完成运行后会被销毁.但在某些情况下,我希望它能够持久存在,就像在这个例子中一样:
Function myFunction()
Dim runCount As Integer
runCount = runCount +1
debug.print "This function is now running for the " & runCount & " time."
End Function
Run Code Online (Sandbox Code Playgroud)
在此示例中,代码不起作用,因为每次都会重置runCount.当然,最简单的解决方案是声明一个全局变量,但在某些情况下,我想为了简单,封装或其他原因而避免这种情况.
那么,在程序运行完成后,有没有办法让局部变量保持不变?
现在,在你说之前 - 我已经阅读了数十个类似的主题,但找不到解决方案。我有一个动态 Variant 数组,必须将其完全清除,因此在 IsEmpty 检查期间将其视为空。我尝试了 Erase,但 IsEmpty 仍然返回 False。我无法对其进行 ReDim,因为该数组是动态的。尝试将整个数组设置为 Nothing,但这在 IsEmpty 检查期间会引发错误。
我做错了什么,如何完全消除该数组,以便 IsEmpty 返回 True?