将Excel f9 / shift f9 / ctrl f9键重新绑定到原始function
我有一个电子表格,我已经使用onkey重新获得了workbook_open中的计算键值:
Private Sub Workbook_Open() Application.OnKey "{F9}", "HandleF9" Application.OnKey "^{F9}", "HandleCtrlF9" Application.OnKey "+{F9}", "HandleShiftF9" End Sub
这工作正常。 但是,显然,它会重新启动在Excel实例中打开的所有电子表格的计算键。 即使反弹的电子表格closures,效果依然存在。
我想通过在workbook_close中取消keybininding来解决这个问题。 这意味着一旦电子表格closures,f9function将恢复正常。 有谁知道如何做到这一点?
省略第二个(可选)参数以返回到正常的functionmsdn链接 。
过程(可选)一个string,指示要运行的过程的名称。 如果过程是“”(空白文本),当按下键时什么都不会发生。 这种forms的OnKey更改Microsoft Excel中按键的正常结果。 如果Procedure省略,Key将恢复到Microsoft Excel中的正常结果,并清除使用以前的OnKey方法进行的任何特殊键分配。
Application.OnKey "{F9}" Application.OnKey "^{F9}" Application.OnKey "+{F9}"
只要省略程序参数
Application.OnKey "{F9}"