Using Enter key in VBA textbox to call macro
我在Excel工作表中有一个文本框。用户可以在框中输入文本,然后单击文本框旁边的"搜索"按钮以查找该文本。"搜索"按钮会调用一个宏。
我的问题是用户必须单击\\'Search \\'按钮才能运行宏,而我想选择在输入文本后仅按Enter键的选项。
是否可以将代码放入文本框,以便在用户按下\\'Enter \\'键时执行搜索宏?
我尝试使用以下代码无济于事。
1 2 3 4 5 6 7 | Private Sub TextBox1_Change() If KeyCode = vbKeyReturn Then Call search End If End Sub |
搜索宏的代码(如果有帮助)是这样的:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | Sub search() On Error GoTo Errmsg Columns("A:B").Find(What:=Worksheets("Companies List").TextBox1.Value, _ After:=ActiveCell, LookIn:=xlFormulas, LookAt:=xlPart, _ SearchOrder:=xlByRows, SearchDirection:= _ xlNext, MatchCase:=False, SearchFormat:=False).Activate Exit Sub Errmsg: MsgBox"Text can't be found." End Sub |
预先感谢!
要获取特殊键的代码,请使用
1 2 3 | Private Sub TextBox1_KeyUp(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer) if KeyCode = asc(vbCr) then call search End Sub |