在我设置的工作表 SelectionChange 事件中:
Application.Interactive = False
.... do work
Application.Interactive = True
出于某种原因,即使我知道代码正在执行,Interactive 也没有恢复为 true。
Excel 2013
有任何想法吗?
Sub Main()
Debug.Print Application.Interactive
Application.Interactive = False
Debug.Print Application.Interactive
Application.Interactive = True
Debug.Print Application.Interactive
End Sub
对我来说不会失败...试试看,在这里查看更多
由于您发现了失败的原因,因此可能Application.Volatile
需要在使用它的函数上将其设置为 false,因为该Interactive
模式会阻止用户界面并Volatile
根据用户输入进行计算。当用户输入被阻止时,您不能期望评估用户输入的函数起作用。一个排除另一个 - 希望这是有道理的。
此外,检查您的on error resume next
oron error goto <label>
语句,因为这会导致跳过一些代码,因此Application.Interactive = True
永远不会执行。