Excel VBA脚本预填写在线表单使用IE浏览器?

我需要帮助。 我正在尝试编写一个VBA脚本,将A列中的值放在一个在线表单中的一个input元素,但没有ID,但名称(“OldUrl”)。 然后,VBA脚本将获取列B中的相邻单元格中的值,并将其放在名为(“NewUrl”)的input字段中的相同forms(“digiSHOP”)中。

窗体是在一个安全的服务器,但是我已经得到尽可能拉起窗口和select的forms。 我无法find一种方法来定位input字段,因为他们没有ID。 以下是我的代码,并感谢您的帮助。

Sub Redirect() Dim IE As Object Dim doc As Object Dim form As Object Dim OldURL As Object Dim NewURL As Object Set IE = CreateObject("InternetExplorer.Application") With IE .Visible = True .Navigate "https://...." Do Until .ReadyState = 4: DoEvents: Loop Set doc = IE.Document Set form = doc.forms("digiSHOP") Set OldURL = doc.getElementById("OldUrl")'Error occurs here. Element has no ID OldURL.Value = Range("A2") Set NewURL = doc.getElementById("NewUrl") NewURL.Value = Range("B2") form.submit Do Until .ReadyState = 4: DoEvents: Loop Do While .Busy: DoEvents: Loop End With End Sub 

此外,我不知道如何定位整个列并循环它,因此值被设置为单元格A2。 这是更多的testing脚本。

 Sub Redirect() Dim IE As Object Dim doc As Object Set IE = CreateObject("InternetExplorer.Application") With IE .Visible = True .Navigate "https://...." Do Until .ReadyState = 4: DoEvents: Loop With .Document.forms("digiSHOP") .elements("OldUrl").Value = Range("A2") .elements("NewUrl").Value = Range("B2") .submit End With Do Until .ReadyState = 4: DoEvents: Loop Do While .Busy: DoEvents: Loop End With End Sub