无法从Application.Onkey运行宏

时间:2018-05-16 15:18:50

标签: excel vba excel-vba

我无法从Application.Onkey选项中运行宏。按TAB键时显示以下消息:“无法运行宏”C:\ ... \ Desktop \ test.xlsm!abc'。宏可能在此工作簿中不可用,或者可能禁用所有宏。“

但是,按Enter键后,选择将在下面的第1行(一如既往),而不是运行相同的宏。

我已从Trust Settings启用了所有宏,并选中了“信任对VBA项目对象模型的访问权限”。该文件已使用xlsm扩展名保存。 以下所有宏都在此工作簿中:

Private Sub Workbook_Open()
    Test1
End Sub

Sub Test1()
    Application.OnKey "{TAB}", "abc"
    Application.OnKey "{ENTER}", "abc"
End Sub

Sub abc()
    MsgBox "TAB"
End Sub

任何人都可以帮我这个吗?

2 个答案:

答案 0 :(得分:0)

要使代码运行,请将Sub Test1abc移至模块。

然后,如果您的键盘上有2个 Enter 键,请按数字键盘上的键(较小的键),您的代码应该可以使用。要使用大号,请使用~,如下所示:

Sub Test1()
    Application.OnKey "{ENTER}", "abc"  'The small one
    Application.OnKey "~", "abc"        'The huge one
End Sub

Application.OnKey MSDN

答案 1 :(得分:0)

我认为您的宏abc()位于" Ten_skoroszyt" (" ThisWorkbook")模块,它应该转移到单独的(新)模块。