VBA Internet Explorer与dynamic下拉列表大麻烦

我是新的网站,所以这是我的第一篇文章!

我必须通过网站http://www.monroe.com/en-US/查看许多汽车应用。 我的应用程序都在我的Excel文件中。 在网站上我们有3个下拉列表(年份,品牌和型号)。 我在互动Vba-Internet有两个问题。

让我们来说一个2010年雪佛兰Aveo5的研究

我的第一个问题是,当我select第一个下拉(年),第二个不工作。 就像第二滴水被冻结一样。 我注意到,在HTML代码中,当我在我的macros中select第一个下拉列表时,第二个下拉列表处于disabled =“disabled”状态。 所以我试着在我的代码中更改属性disabled = false或disabled =“”,但也失败了。

我的第二个问题是HTML代码中的值。 而不是有一年(例如:2010年),这是一个这样的代码(值“42621”)。 所以我不能把我的年份放在我的excel文件中作为价值。 在HTML代码中的年份只能在我的vba代码中find作为innerhtml,innertext,outertext,textcontent ….

  1. 有没有办法正确使用下拉列表?
  2. 我可以在我的excel文件中使用HTML代码中写入的值吗?

这是我的代码:

Sub Research() Dim IE As New InternetExplorer Dim IEDoc As HTMLDocument Dim Year As HTMLSelectElement Dim Make As HTMLSelectElement Dim Model As HTMLSelectElement Dim Button As HTMLFormElement IE.navigate "http://www.monroe.com/en-US/" IE.Visible = True While IE.readyState <> 4 Or IE.Busy: DoEvents: Wend Set IEDoc = IE.document Set Make = IEDoc.all("widget-ymm-make-desktop") Make.disabled = False Set Year = IEDoc.all("widget-ymm-year-desktop") Year.Value = "42621" 'I would like to put the year 2010 from my excel instead 'Once the year is selected the dropdown make is not working or is frozen Make.textContent = "Chevrolet" Set Model = IEDoc.all("widget-ymm-model-desktop") Model.textContent = IEDoc.all("Aveo5") Set Button = IEDoc.all("lookup-form-desktop") Button.submit While IE.readyState <> 4 Or IE.Busy: DoEvents: Wend Set IE = Nothing Set IEDoc = Nothing IE.Quit End Sub 

以下是HTML代码的一部分:

  <select name="widget-ymm-year-desktop" class="widget-ymm-year widget-ymm-year-desktop form-control" id="widget-ymm-year-desktop" aria-required="true" required=""> 

感谢您的帮助