如何使用VBA在Excel中的ENTER键上调用函数

军团

Google应该给我提供很多例子,但似乎没有一个能用

我想要的是:每次用户按下然后松开ENTER键,程序都将执行我的操作(即创建MsgBox或调用函数Foo)。我更希望以MWE的形式

我做了什么:我曾尝试使用Google搜索,但所有示例均未起作用。它们可以编译,但是什么也不做。我还确保以兼容宏的Excel格式保存。

我使用的是:我正在使用Excel 2016,Office 365使用64位

编辑:用户正在将此信息输入到工作表中。我想拦截用户输入,每当他们按ENTER键时,将光标/活动单元格向下移两行,因此每个单元格下面都有一个空单元格。如果用户按下Tab键,我想将光标/活动单元格放在两列的右边,因此每个单元格的右边都有一个空单元格。

编辑2:这是我现在拥有的MWE,它应该可以工作,但是什么也没做。我将其添加到工作表中,而不是作为一个模块

Sub SomeActions()
    MsgBox ("Hello")
End Sub

Private Sub Workbook_Open()
    Application.OnKey "~", "SomeActions"
End Sub
ttaao​​ossuu

首先,进行一个Sub执行所需逻辑的回调将其放入新的代码模块(不放入工作表代码):

Sub SomeActions()
...
End Sub

然后,订阅OnKey事件,例如,当用户ThisWorkbook在VBA编辑器中打开工作簿(此代码进入)模块时:

Private Sub Workbook_Open()
    Application.OnKey "~", "SomeActions"
End Sub

"~"表示Enter密钥。对于数字小键盘按键,请使用"{ENTER}"

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章