0

我想将网页中存在的特定文本“110001”复制到我的 Excel 文件中的工作表中。请告诉我如何通过 vbscript 做到这一点。下面是我要复制的相关源代码行。

<h1 id="h1">110001</h1>

下面是我正在使用的代码。此代码中的问题是它没有从网页复制任何内容。此外,它在最后一行的第 3 行给出运行时错误 1004 - Range("A1").Select

Private Sub blahblah_Click()
Dim ie As Object
Set ie = CreateObject("InternetExplorer.Application")
ie.Visible = True
ie.Navigate "http://someWebsite"
    Do While ie.Busy
Application.Wait DateAdd("s", 1, Now)
    Loop
Set y = ie.Document.getelementbyid("h1")
ie.ExecWB 12, 2
Workbooks("Book1.xlsm").Activate
Sheets("Sheet2").Select
Range("A1").Select
ActiveSheet.Paste
End Sub
4

3 回答 3

1

y = ie.document.getElementById("ad-space.holdings").innerHTML

上面的代码向我显示了一个错误或 err.number = 424..

让我知道我需要从 VBA 中的参考中选择任何内容吗?

于 2015-04-02T10:43:34.307 回答
0

可以避免复制粘贴吗?试试这个。

Private Sub blahblah_Click()
Dim ie As Object
Dim WB As Workbook
Dim WS As Worksheet
Set WB = Workbooks("Book1.xlsm")
Set WS = WB.Sheets("Sheet2")
Set ie = CreateObject("InternetExplorer.Application")
ie.Visible = True
ie.Navigate "http://someWebsite"
    Do While ie.Busy
Application.Wait DateAdd("s", 1, Now)
    Loop
y = ie.Document.getelementbyid("h1").innerHTML
WS.Range("A1").Value = y
End Sub

基本上,您需要该innerHTML部分,因为这是获取具有该元素 ID 的 HTML 标记内的值所需的控件。

于 2013-11-07T20:31:33.250 回答
0
Private Sub blahblah_Click()
Dim ie As Object
Dim WB As Workbook
Dim WS As Worksheet
Set WB = Workbooks.Add
Set WS = WB.Sheets("Sheet2")
Set ie = CreateObject("InternetExplorer.Application")
ie.Visible = True
ie.navigate "http://etfdb.com/etf/EEM/#holdings"
    Do While ie.Busy
Application.Wait DateAdd("s", 1, Now)
    Loop
y = ie.document.getElementById("ad-space.holdings").innerHTML
WS.Range("A1").Value = y
End Sub
于 2015-04-02T10:53:08.580 回答