我正在制作一个Excel工作表,在xll插件的帮助下,我正在尝试更新数据.我按Ctrl Alt F9开始计算,但计算在任何按键或单元格选择时停止.有没有办法覆盖这个功能,或者bug?
这不会发生在Excel 2003上.
解决方法
非常好的问题!
不确定这会在您的C#插件中工作,但是使用Excel 2010应用程序对象模型,您可以使用Application.CalculationInterruptKey在按下某个键时停止数据计算的中断.没有测试,但这可以是它.
在CtrlAltF9的开头应用它:
Dim lKey As Long lKey = Application.CalculationInterruptKey Application.CalculationInterruptKey = xlNoKey
然后在计算结束时,将其重置为原来的值或将其更改为默认的xlAnyKey.
Application.CalculationInterruptKey = lKey ' Or xlAnyKey
如果您有其他事件触发的Subs,您可能需要添加关于Application.CalculationState的行,以便在Application.CalculationState = xlDone之前不会进行更改.
希望这可以帮助.