Webページ上のデータテーブルをナビゲートするためにVBA Excelを取得しようとしています。 Webページが1ページ目に開きます.Webページ番号をVBA Excelコードで更新できます。 (少なくともそれは動作しているように見えます) しかし、私は要求されたページに適用されるデータを画面に表示することはできません。マウスでページドロップダウンボタンをクリックすると、ボタンが「死んだ」ように見えます。私は正常に別のページをマウスでOKを選択することができますし、Excel VBAで選択しようとしたページ番号を選択することもできます。 私はIEを使用しています。私はディスパッチイベントを使用すると信じているバージョン11。 私は成功していないネット上で研究したあらゆる種類の技を試してきました。 次のコードは私の最新の試みです。私よりも経験豊富な人が助けてくれることを願っています。前もって感謝します。WebページをVBA Excelから要求されたページに移動させることができない理由
Sub ExtractTablesData()
Dim IE As Object
Dim obj As Object
Dim elemCollection As Object
Dim evt
Set IE = CreateObject("InternetExplorer.Application")
With IE
.Visible = True
.navigate ("http://My Web Page")
While IE.readystate <> 4 ' wait for pages to download
DoEvents
Wend
Do While IE.busy: DoEvents: Loop ' make sure page has downloaded
Set elemCollection = IE.Document.getelementsbytagname("TABLE")
Set evt = IE.Document.createEvent("HTMLEvents")
evt.initEvent "change", False, True
IE.Document.getElementsbyClassName("pager-select")(0).selectedIndex = 5
' trying to get the 6th page of data
IE.Document.getElementsbyClassName("pager-select")(0).Click
IE.Document.getElementsbyClassName("pager-select")(0).dispatchEvent (evt)
Application.Wait (Now + TimeValue("0:00:02"))
Do While IE.busy: DoEvents: Loop ' make sure page has downloaded
While IE.readystate <> 4 ' wait for pages to download
DoEvents
Wend
End With ' IE