- 帖子
- 4901
- 主題
- 44
- 精華
- 24
- 積分
- 4916
- 點名
- 105
- 作業系統
- Windows 7
- 軟體版本
- Office 20xx
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台北
- 註冊時間
- 2010-4-30
- 最後登錄
- 2025-5-1
               
|
6#
發表於 2012-2-21 15:05
| 只看該作者
回復 5# fusayloveme
Sub nn()
Dim MyIE As InternetExplorer, MyDoc As HTMLDocument
Set MyIE = CreateObject("InternetExplorer.application")
Set d = CreateObject("Scripting.Dictionary")
With MyIE
.Visible = True
r = 3
For i = 1 To 1044
.navigate "http://www.tbs-aqua.com/encyclopaedia/plant?plantID=" & i '網址
Do Until .readyState = READYSTATE_COMPLETE: Loop '直到網頁下載完成
Set MyDoc = .document '設定網頁中的文件給變數
With MyDoc '網頁中的文件敘述區段
Set x = .getElementsByTagName("Table") '取得文件中所有表格
For j = 0 To x(9).Cells.Length - 1 Step 2 '在第10個表格中所有格子做迴圈,一次跳2格
n = Replace(Replace(x(9).Cells(j).innerText, ":", ""), " ", "") '取奇數格的內容去冒號與空格
d(n) = x(9).Cells(j + 1).innerText '以奇數格內文字做索引紀錄偶數格的內容
Next
d("性狀") = x(10).innerText '第11個表格內容為性狀
End With
With Sheet1
.Cells(r, 1) = i 'A欄寫入編號
For k = 2 To 11
n = .Cells(2, k).Value '從B欄開始寫入對應的內容
.Cells(r, k) = d(n)
Next
r = r + 1
End With
d.RemoveAll '移除字典物件內容
Next
.Quit '關閉IE瀏覽器
End With
End Sub |
|