VBA在IE中键入事件不能在另一台机器上工作

我在我的网页上有一个文本框,我input了一个数字。 之后,我想执行“Enter”键按下事件。 怎么做?

我试过了:

  1. Sendkey选项(它不能正常工作,寻找一些好的替代选项)
  2. 我也尝试下面的选项build议由某人。 在这种情况下,这项工作在一个系统罚款,但是当我尝试在不同的机器相同的代码相同的IE版本相同的Excel版本,它不工作。

代码:

Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long) Private Const VK_ENTER = &HD Declare Function GetKeyState Lib "user32.dll" (ByVal nVirtKey As Long) As Integer Function ENT() keybd_event VK_ENTER, 1, 0, 0 End Function 

VBA代码,我用来在该文本框中input数字:

 .document.getElementById("filteredListForm:wfmtAllTaskList:wfmtAllTaskList_columns_2:2:_filterInput").Value = number 

**此代码后我要执行什么在这个文本中input关键事件。

该文本框的HTML代码:

 <input id="filteredListForm:wfmtAllTaskList:wfmtAllTaskList_columns_2:2:_filterInput" class="mdw_columnFilter" type="text" placeholder="Project ID" onblur="hideFilterInput(this);" onkeydown="submitOnEnter(event, this.form);" value="" name="filteredListForm:wfmtAllTaskList:wfmtAllTaskList_columns_2:2:_filterInput"> 

不是,使用HTML对象库来回答备份以备注

 Public Function x(i As Control) Dim d As HTMLDocument Dim f As MSHTML.HTMLFormElement Dim e As MSHTML.HTMLInputElement Set e = d.getElementById("x") Set f = e.form f.submit End Function