我想填写表单并获取表单的响应值。我需要的表格可以在www.1ratio.nl
找到现在这个表单没有提交按钮。我的vba中有一个代码,当有可用的提交按钮时,该代码可以正常工作,但现在我还是没有得到网站的回复。
编辑此外,是否有一个选项可以不创建一个新的IE屏幕,其中已经有一个屏幕可用?那么它在最后一种情况下会创建一个新的标签吗?
编辑2:我想可以使用VBA向网站添加提交按钮。这是可能的,这是我想要的解决方案吗?
代码:
Sub fillform()
zero = 1
one = 2
two = 3
three = 4
four = 1
Dim IE As Object
Set IE = CreateObject("InternetExplorer.Application")
IE.Visible = True
IE.navigate "http://www.1ratio.nl"
Application.StatusBar = "Submitting"
While IE.busy
DoEvents
Wend
delay 1
IE.document.getelementbyid("ContentPlaceHolder1_Leeftijd01DropDownList").Value = zero
delay 1
IE.document.getelementbyid("ContentPlaceHolder1_Leeftijd12DropDownList").Value = one
delay 1
IE.document.getelementbyid("ContentPlaceHolder1_Leeftijd23DropDownList").Value = two
delay 1
IE.document.getelementbyid("ContentPlaceHolder1_Leeftijd34DropDownList").Value = three
delay 1
IE.document.getelementbyid("ContentPlaceHolder1_Leeftijd48DropDownList").Value = four
delay 1
MsgBox (IE.document.getelementbyid("ContentPlaceHolder1_AantalLabel"))
End Sub
Private Sub delay(seconds As Double)
Dim endtime As Date
endtime = DateAdd("s", seconds, Now())
Do While Now() < endtime
DoEvents
Loop
End Sub
答案 0 :(得分:0)
我发现我可以通过使用以下代码触发HTML代码选择框上的onchange事件来解决这个问题:
IE.document.getelementbyid("ContentPlaceHolder1_Leeftijd01DropDownList").fireevent ("onchange")