要通过键盘快捷键在MS Excel中启动VBA程序,可以按照模式指定此类快捷方式
Ctrl + [一个字母]
这似乎是Excel制造商提供的唯一可能性。即使 Ctrl + [数字] 也不起作用,因为无法使用默认方法分配此类组合。
但是,我想要“MS Word样式快捷键”,例如
Ctrl + [字母或数字或其他] + [字母或数字或其他]
因为他们不仅给了我更多的快捷方式,还让我指定了帮助我记住它们的快捷方式,例如 Ctrl + d + e 表示“删除所有内容”(仅作为示例)。
因此,我正在寻找一种创建此类增强快捷方式的方法。我正在考虑跟踪键盘上的按键的VBA程序,并且某些组合会开始做某事(案例a - >做x,案例b - >做y等等)。
一个懒惰的方法可能是编写一个读取以下两个键命中的过程,并且该过程本身首先必须由“默认类型”快捷键触发,例如 Ctrl + [letter] 。这当然会使我开始玩的键数量增加近一倍。
问题:有没有办法让VBA程序跟踪所有被击中的键,存储它们,例如成例如四个地方,CCTV摄像机记录事物的方式(删除最旧的),并注意某些组合,例如 Ctrl + [letter] + [letter] ,如果找到了什么?
当然,这样的关键记录程序不应该显着减慢我的系统速度。
答案 0 :(得分:1)
以前问过这个问题,请参阅:Is there any event that fires when keys are pressed when editing a cell?
在VBA中看起来很费劲,基本上使用PINVOKE来获取基础Windows功能。如果您有这种要求,可能需要查看更全面的开发环境。