最后一列未显示在表格中

时间:2014-02-20 09:23:50

标签: excel vba excel-vba

我必须从http://www.idealo.de/preisvergleich/OffersOfProduct/143513.html

派生价格表

到目前为止,我已经完成了这段代码

Sub test()       

  Set sht = Sheets("Tabelle4")
  rCount = 1

    Dim objIE As Object, objTbl As Object, objTR As Object
    Set objIE = CreateObject("InternetExplorer.application")

    With objIE
        .Visible = True
        .Navigate "http://www.idealo.de/preisvergleich/OffersOfProduct/143513.html"

        Do While .Busy Or .ReadyState <> 4
            DoEvents
        Loop

        Set objTbl = objIE.Document.getElementById("offers-list")
        Set objTR = objTbl.getElementsByTagName("tr")


        rCount = 1
        On Error Resume Next
        For Each td In objTR
            Cells(rCount, 1) = td.all(0).outerText
            Cells(rCount, 2) = td.all(4).innerText

            'Cells(rCount, 3) = td.all(2).outerText
            'Cells(rCount, 4) = td.all(3).outerText

            'Cells(rCount, 6) = td.all(5).innerText
            'Cells(rCount, 7) = td.all(6).innerText
            rCount = rCount + 1
        Next
        On Error GoTo 0

    End With

    objIE.Quit
    Set objIE = Nothing

End Sub

它给我前两列但是包含商店名称的最后一列没有显示。任何人都可以帮助哪一个是最后一列的td()

1 个答案:

答案 0 :(得分:0)

为了确定每个td对象具有哪种类型的数据,您必须将它们添加到手表中。例如:

enter image description here

enter image description here

enter image description here

正如你所看到的,在 td 对象中,我正在观察我能说出的值

td.all.item(0).innertext 

是: 佳能Nahlinse 500D 72毫米

现在您应该在监视窗口中查看其他值,直到您可以在 td 对象中找到商店的索引