我的目标:让中国的大学生走出校门的那一刻就已经具备这些Office技能,让职场人士能高效使用Office为其服务。支持鹏哥,也为自己加油! 前几天写过一篇文章: 《在Excel中禁用右键菜单你会吗?》在Excel中利用工作表事件可以实现当点击右键时不弹出右键菜单,但是当我们按下弹出右键菜单的快捷键Shift+F10时,照样会弹出右键菜单,而且是可以使用的。 那怎么才能真正的禁用右键菜单呢?也就是说不仅要点击右键不会弹出右键菜单,而且当按下Shift+F10时也不会弹出右键菜单。 要想解决上述问题,我们先要学习一个知识点,如何在VBA中让指定按下键盘上某个键时能发生一个事件,这就是所谓的OnKey事件,即按下某个键会执行一个特定的过程。 案例: 实现效果:按下Shift+F10后弹出一个消息框,显示:你好,Shift+F10已被禁用 首先写一个过程: Sub NoShiftF10() MsgBox '你好,Shift+F10已被禁用' End Sub 然后把这个过程的快捷键指定为Shift+F10:
这样,当运行完SetupNoShiftF10过程后,Application.OnKey '+{F10}', 'NoShiftF10'就把Shift+F10指定为触发程序NoShiftF10。 所以,当我们按下Shift+F10以后,就会自动运行NoShiftF10过程。 OnKey事件的基本语法: Application.OnKey '某个键', '某个程序' 那怎么让快捷键恢复原来的功能呢?比如要让上面的Shift+F10恢复弹出快捷键的功能呢? '重新启用Shift+F10快捷键 Sub ResetShiftF10() Application.OnKey '+{F10}' End Sub 向右滑动可以查看完整代码 Application.OnKey '某个键' OnKey方法的第二个参数不写,这样就会恢复这个键本来的作用。 具体键的书写代码如下: 单个键:
组合键:
比如:上述案例中Shift+F10,表示为:+{F10} 本节的分享就到这里,鹏哥祝大家每天都有进步。 学习点VBA技术,从此高效工作! 从基础操作到VBA, 两杯咖啡的钱, 换取一份如此详细的Excel视频资料, 你还在犹豫? 欲购从速,联系微信号:527240310 非诚勿扰! 每天进步一点,每天提升一点! |
|