在VBA中如何将键盘快捷键恢复为默认值?

时间:2012-08-28 14:00:43

标签: vba keyboard-shortcuts

在我的VBA Excel加载项中,我允许用户为我的公共宏指定任意键盘快捷键。我允许他们在运行时更改这些快捷方式(实际上,他们更改配置文件然后重新加载)。我使用Application.OnKey来执行此操作。

如果用户在运行时更改了快捷方式,如何恢复旧键盘快捷键的任何先前默认定义?

例如,如果我以编程方式将^S分配给宏,然后将其更改为^E,如何将^S恢复为原始Excel“保存”行为?< / p>

1 个答案:

答案 0 :(得分:5)

要将通过OnKey定义的密钥返回到其默认值,请在没有过程的情况下定义它。

CTRL + S 设置为“SpecialPrintProc”

Application.OnKey "^S", "SpecialPrintProc" 

这会将 CTRL + S 恢复为正常含义。

Application.OnKey "^S" 

这会禁用 CTRL + S

Application.OnKey "^S", ""