2017-03-31 93 views
1

出于某种原因,我在我的normal.dotm文件的快捷方式获取了一会儿删除一次,
所以我知道我可以通过点击单词围绕在Word中创建快捷方式(https://wordribbon.tips.net/T008058_Assigning_a_Macro_to_a_Shortcut_Key.html创建键盘热键/在Word快捷键使用VBA

,但我想他们硬编码,而不是像我在Excel中做的:

Sub keyBoardShortCuts() 

    Application.OnKey "%^d", "updateDB" 
    Application.OnKey "%^p", "openProjectList" 
    Application.OnKey "%^m", "addNewLS" 
    Application.OnKey "%^l", "createLS" 
    Application.OnKey "%^g", "loadGui" 
    Application.OnKey "%^b", "Custom_Button_Click" 

End Sub 
Private Sub Workbook_Open() 
    Call keyBoardShortCuts 
End Sub 

然而,这并不字工作,所以什么是语法词这样做呢?

回答

1

你需要使用KeyBindingsEnum WdKey常量(按F2键查看列表):

With Application.KeyBindings 
    .Add KeyCode:=BuildKeyCode(wdKeyAlt, wdKeyControl, wdKeyD), _ 
     KeyCategory:=wdKeyCategoryCommand, _ 
     Command:="updateDB" 
    .Add KeyCode:=BuildKeyCode(wdKeyAlt, wdKeyControl, wdKeyP), _ 
     KeyCategory:=wdKeyCategoryCommand, _ 
     Command:="openProjectList" 
    .Add KeyCode:=BuildKeyCode(wdKeyAlt, wdKeyControl, wdKeyM), _ 
     KeyCategory:=wdKeyCategoryCommand, _ 
     Command:="addNewLS" 
    '... 
End With 'Application.KeyBindings