![VBA 错误:堆栈空间不足](https://linux22.com/image/1575942/VBA%20%E9%94%99%E8%AF%AF%EF%BC%9A%E5%A0%86%E6%A0%88%E7%A9%BA%E9%97%B4%E4%B8%8D%E8%B6%B3.png)
答案1
您定义的函数是递归的,无条件地调用自身,直到堆栈被所有调用填满。
您应该更改子程序的名称,例如:-
Sub Calc()
Calculate
End Sub
如果链接Calc()
到按钮,则可以避免任何递归。
答案2
您正在 Calculate 内部调用 Calculate。每次调用 Calculate 都会导致再次调用 Calculate,然后调用 Calculate... 最后,当堆栈填满时,您就会收到该错误。
您定义的函数是递归的,无条件地调用自身,直到堆栈被所有调用填满。
您应该更改子程序的名称,例如:-
Sub Calc()
Calculate
End Sub
如果链接Calc()
到按钮,则可以避免任何递归。
您正在 Calculate 内部调用 Calculate。每次调用 Calculate 都会导致再次调用 Calculate,然后调用 Calculate... 最后,当堆栈填满时,您就会收到该错误。