Sub Test()
Const url As String = "http://jsjustweb.jihsun.com.tw/z/zc/zck/zck_6257.asp.htm"
Cells.Clear
Application.DisplayStatusBar = True
Application.ScreenUpdating = False
Set ie = CreateObject("internetexplorer.application") '使用此方式可以免除 "設定引用項目"
With ie
.Visible = False 'True為開啟ie, False為不開啟ie
.Navigate url
Do While .ReadyState <> 4 '等待網頁開啟
DoEvents
Loop
Application.StatusBar = "資料複製中請稍候...."
.ExecWB 17, 2 'Select All
.ExecWB 12, 2 'Copy selection
Sheets("Sheet1").Cells.Select
Range("A1").Activate
ActiveSheet.PasteSpecial Format:="HTML", Link:=False, DisplayAsIcon:= _
False, NoHTMLFormatting:=True
End With
Application.StatusBar = False
Columns("A:B").Delete
ie.Quit
MsgBox "資料複製結束"
End Sub
我是Amin,喜好整合軟體之間的應用至數據分析,如Excel VBA、Python、C/C++、C#、JavaScript、Google Apps Script、Batch、MultiCharts的相互應用,歡迎各領域同好相互討論,創造人生精采的火花
2012年8月3日 星期五
Excel VBA 針對 js的資料網頁無法抓取的解法
股票名稱及代碼是在網頁載入完成後,才用 JavaScript 動態產生的
所以 Web Query 抓不到
因為網頁資料還單純,建議用VBA開啟網頁後複製表格到excel
沒有留言:
張貼留言