将表导入Excel,该脚本是由网页中的脚本生成的

时间:2017-01-31 09:50:48

标签: html excel vba import powerquery

我一直在尝试将下表导入Excel

www.bursamalaysia.com/market/securities/equities/indices /

我尝试过PowerQuery,Data Tab“From Web”等。从我的研究中,我开始相信Excel无法“看到”数据的原因是因为它是用Javascript动态生成的。

我很感激任何尝试通过PowerQuery甚至VBA脚本将表格转换为excel的帮助。

我看到了类似at this的内容,并将其修改如下,但我得到一张空表。

Sub Bursa_Indices()

Dim xmlHttp As Object
Dim TR_col As Object, TR As Object
Dim TD_col As Object, TD As Object
Dim row As Long, col As Long

Set xmlHttp = CreateObject("MSXML2.XMLHTTP.6.0")
xmlHttp.Open "GET", "http://www.bursamalaysia.com/market/securities/equities/indices/", False
xmlHttp.setRequestHeader "Content-Type", "text/xml"
xmlHttp.send

Dim html As Object
Set html = CreateObject("htmlfile")
html.body.innerHTML = xmlHttp.ResponseText

Dim tbl As Object
Set tbl = html.getElementById("bm_indices_prices_table")

row = 1
col = 1

Set TR_col = html.getelementsbytagname("TR")
For Each TR In TR_col
    Set TD_col = TR.getelementsbytagname("TD")
    For Each TD In TD_col
        Cells(row, col) = TD.innerText
        col = col + 1
    Next
    col = 1
    row = row + 1
Next

End Sub

提前致谢。

1 个答案:

答案 0 :(得分:0)

使用Power Query / Get& amp;转变。我使用New Query / From Web /粘贴该URL /选择名为" RSS Feeds"的表。