按“Enter”键激活button

在单元格中input内容后按下回车键时是否可以激活button?

我有一个searchfunction,您可以在单元格(C9)中inputsearchstring,并且按下button时会激活该function。 但是如果你编辑了一个单元格,我想在按下回车键的时候激活它。

所以我伪代码我在想:

If enterKey Is Activated Then If cursor Is in Range("C9") Then FindWords(parameter 1, parameter 2...) End If End If 

假设我们想要检测件事情:

  1. 单元格C9被更改
  2. Enter键用于此更改

标准模块中input:

 Public Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer Public Function WhichKey() As String If (GetAsyncKeyState(vbKeyTab)) Then WhichKey = "Tab" Exit Function End If If (GetAsyncKeyState(vbKeyTab)) Then WhichKey = "Tab" Exit Function End If If (GetAsyncKeyState(vbKeyDown)) Then WhichKey = "Down Arrow" Exit Function End If If (GetAsyncKeyState(vbKeyUp)) Then WhichKey = "Up Arrow" Exit Function End If If (GetAsyncKeyState(vbKeyRight)) Then WhichKey = "Right Arrow" Exit Function End If If (GetAsyncKeyState(vbKeyLeft)) Then WhichKey = "Left Arrow" Exit Function End If If (GetAsyncKeyState(vbKeyReturn)) Then WhichKey = "Enter" Exit Function End If If (GetAsyncKeyState(vbKeyRButton)) Then WhichKey = "Right Click" Exit Function End If If (GetAsyncKeyState(vbKeyLButton)) Then WhichKey = "Left Click" Exit Function End If End Function 

并在工作表代码区域中input:

 Private Sub Worksheet_Change(ByVal Target As Range) If Intersect(Range("C9"), Target) Is Nothing Then Exit Sub If WhichKey() <> "Enter" Then Exit Sub Application.EnableEvents = False Call FindWords() Application.EnableEvents = True End Sub