Excel / 使用SeleniumBasic查詢發布到網路的google sheets 番外篇

補充1 Excel / 使用SeleniumBasic查詢發布到網路的google sheets 2 提到的剪貼簿功能

按照相同的思路,只要能夠取得表格完整的<table>標籤內容

就可以將html表格貼入Excel中

所以,使用XMLHTTP也是可以做到一樣的效果

 


補充2 在爬文的過程中,也有看到之前(  VBA / 使用Excel VBA爬蟲Google搜尋結果 2  )曾經使用過Html Document的方式

可以直接利用 HTMLtable物件的屬性:Rows( )、 Cells( ) 取出table的<tr> <td>

以下這段程式碼其實不太需要修改就能夠直接套用

只修要改HTML_Content.getElementsByTagName(“table”)對應程式碼的變數

之後使用的時候,找出目標table在html的位置(第幾個table)即可 ( iTable )

    Column_Num_To_Start = 1
    iRow = 2
    iCol = Column_Num_To_Start
    iTable = 0

    'Loop Through Each Table and Download it to Excel in Proper Format
    For Each Tab1 In HTML_Content.getElementsByTagName("table")
        With HTML_Content.getElementsByTagName("table")(iTable)
            For Each Tr In .Rows
                For Each Td In Tr.Cells
                    Sheets(1).Cells(iRow, iCol).Select
                    Sheets(1).Cells(iRow, iCol) = Td.innerText
                    iCol = iCol + 1
                Next Td
                iCol = Column_Num_To_Start
                iRow = iRow + 1
            Next Tr
        End With
        iTable = iTable + 1
        iCol = Column_Num_To_Start
        iRow = iRow + 1
    Next Tab1

 

參考資料

Excel VBA html Table import – Export Web Table to Worksheet

Fast ways to grab table from HTML using VBA ?

Convert HTML-table to Excel using VBA