如何在 Application.OnKey 中使用方括号? (Excel VBA)
How can I use square brackets in Application.OnKey? (Excel VBA)
我想使用组合键Shift + Alt + [ 来调用我的 VBA 项目中的一个子程序。这是我试过的代码:
Appication.OnKey "+%[", "mySubroutine"
我在使用带有 shift 和 alt 的其他字符时没有遇到任何问题,例如小写字母和数字。但是,当我尝试使用左方括号时,出现以下错误:
Method 'OnKey' of object '_Application' failed
我还尝试将左方括号与所有不同组合一起使用 Ctrl、Alt 和 Shift。它们都产生相同的错误。
Application.OnKey "^[", "mySubroutine"
Application.OnKey "+[", "mySubroutine"
Application.OnKey "%[", "mySubroutine"
Application.OnKey "^+[", "mySubroutine"
Application.OnKey "^%[", "mySubroutine"
Application.OnKey "^+%[", "mySubroutine"
我也试过像这样使用左方括号 (91) 的 ASCII 码:
Application.OnKey "+%{91}", "mySubroutine"
运气不好。
我还尝试使用 Excel 的内置 Chr() 函数和该 ASCII 键码:
Application.OnKey "+%" & Chr(91), "mySubroutine"
也没有用。
我是运行Excel2013,我们办公室的另一台电脑是运行Excel2003,虽然那台电脑用的是Excel4宏语言, 可以使用左方括号设置键盘快捷键。
Microsoft 似乎在较新版本的 Excel 中删除了此功能。但是,如果有人能想出办法让它工作,我将不胜感激!
Application.OnKey "+%{[}", "mySubroutine"
与 SendKeys 相同的代码...
How to print or send braces ( ) using VBA sendkeys
https://social.technet.microsoft.com/wiki/contents/articles/5169.vbscript-sendkeys-method.aspx
The plus sign "+", caret "^", percent sign "%", tilde "~", and
parentheses "()" all have special meanings and must be enclosed within
braces "{}". Square brackets "[]" must also be enclosed within braces
although they have no special meaning. To specify brace characters
themselves, use "{{}" and "{}}".
我想使用组合键Shift + Alt + [ 来调用我的 VBA 项目中的一个子程序。这是我试过的代码:
Appication.OnKey "+%[", "mySubroutine"
我在使用带有 shift 和 alt 的其他字符时没有遇到任何问题,例如小写字母和数字。但是,当我尝试使用左方括号时,出现以下错误:
Method 'OnKey' of object '_Application' failed
我还尝试将左方括号与所有不同组合一起使用 Ctrl、Alt 和 Shift。它们都产生相同的错误。
Application.OnKey "^[", "mySubroutine"
Application.OnKey "+[", "mySubroutine"
Application.OnKey "%[", "mySubroutine"
Application.OnKey "^+[", "mySubroutine"
Application.OnKey "^%[", "mySubroutine"
Application.OnKey "^+%[", "mySubroutine"
我也试过像这样使用左方括号 (91) 的 ASCII 码:
Application.OnKey "+%{91}", "mySubroutine"
运气不好。
我还尝试使用 Excel 的内置 Chr() 函数和该 ASCII 键码:
Application.OnKey "+%" & Chr(91), "mySubroutine"
也没有用。
我是运行Excel2013,我们办公室的另一台电脑是运行Excel2003,虽然那台电脑用的是Excel4宏语言, 可以使用左方括号设置键盘快捷键。
Microsoft 似乎在较新版本的 Excel 中删除了此功能。但是,如果有人能想出办法让它工作,我将不胜感激!
Application.OnKey "+%{[}", "mySubroutine"
与 SendKeys 相同的代码...
How to print or send braces ( ) using VBA sendkeys
https://social.technet.microsoft.com/wiki/contents/articles/5169.vbscript-sendkeys-method.aspx
The plus sign "+", caret "^", percent sign "%", tilde "~", and parentheses "()" all have special meanings and must be enclosed within braces "{}". Square brackets "[]" must also be enclosed within braces although they have no special meaning. To specify brace characters themselves, use "{{}" and "{}}".