html - VBA复制网站数据

标签 html vba excel

有人可以帮我指出如何通过 VBA 将特定数据从网站复制到 Excel 工作表的正确方向吗?

我尝试使用宏记录器和网络查询,但它一直显示错误脚本,并且黄色箭头没有出现在我想要复制的部分。

这是我要复制的网站http://etfdb.com/etf/EEM/#holdings

我只想复制前十大控股部分。

任何帮助将不胜感激。预先感谢您。

编辑:这是我当前的代码,但没有显示任何内容,有人可以告诉我出了什么问题吗?

Sub Get123()

Dim oHtml       As HTMLDocument
Dim oElement    As Object

Set oHtml = New HTMLDocument

With CreateObject("WINHTTP.WinHTTPRequest.5.1")
    .Open "GET", "http://etfdb.com/etf/EEM/#holdings", False
    .send
    oHtml.body.innerHTML = .responseText
End With

For Each oElement In oHtml.getElementsByClassName("holdings-left-content")
    ActiveSheet.Range("A1").Value = oElement.Value
Next oElement

End Sub

最佳答案

我在这里尝试了这个方法,但它对我不起作用。我发现Pull Web Page Into Worksheet来自用户 JerryDOzgrid,我将其包含在此处,以供将来引用。

Sub Test() 

    Dim IE As Object 

    Sheets("Sheet3").Select 
    Range("A1:A1000") = "" ' erase previous data
    Range("A1").Select 

    Set IE = CreateObject("InternetExplorer.Application") 
        With IE 
            .Visible = True 
            .Navigate "http://www.aarp.org/" ' should work for any URL
            Do Until .ReadyState = 4: DoEvents: Loop 
        End With 

        IE.ExecWB 17, 0 '// SelectAll
        IE.ExecWB 12, 2 '// Copy selection
        ActiveSheet.PasteSpecial Format:="Text", link:=False, DisplayAsIcon:=False 
        Range("A1").Select 
        IE.Quit 

End Sub 

关于html - VBA复制网站数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26561527/

相关文章:

javascript - 如果在 DOM 中的任何地方单击,则隐藏 div

javascript - 如何使用 jquery 更新 p(段落标记)的值

Excel VBA 位控制

VBA 字符串作为整数始终为 "zero"

excel - 如何修复 VBA Find 方法的 "Subscript out of range"错误?

linux - 使用VBA将linux文本文件加载到excel中

jquery - 有时持久页脚也会在 jquerymobile 中的页面转换期间移动

excel - 如何仅比较不同Excel工作表(列)中的部分字符串

python - 使用python xlrd模块从S3读取excel表时访问错误

javascript - 显示默认行 KnockOut.js