標題:
[發問]
請問最近用vba下載twse大盤資料時,遇到一些網址的問題
[打印本頁]
作者:
ashin1981
時間:
2016-8-19 21:14
標題:
請問最近用vba下載twse大盤資料時,遇到一些網址的問題
本帖最後由 ashin1981 於 2016-8-19 21:16 編輯
各位大大你好!
小弟之前有用vba excel web方式下載大盤指數(twse網站)到excel時都是正常的,但是最近在下載8月份資料時有一些問題,在8月份以前的網址都可以完整下載所有天數的資料,不曉得是不是twse的網站有改版嗎?
1. http://www.twse.com.tw/ch/trading/exchange/FMTQIK/genpage/Report201608/201608_F3_1_2.php?STK_NO=&myear=2016&mmon=08
2. http://www.twse.com.tw/ch/trading/exchange/FMTQIK/genpage/Report201607/201607_F3_1_2.php?STK_NO=&myear=2016&mmon=07
上面兩個網址,第1個是8月份的,可是他只能出現8/1~8/5的資料,第2個是7月份的,他可以出現7/1~7/30所有的資料,請問各位大大可以問是哪裡有問題嗎?
或可以用其他程式下載到excel。
程式在8月以前都可以正常顯示所有天數的資料,如下所示:
Sub 下載大盤指數Web()
Dim WebSht大盤 As Worksheet
大盤指數URL = "URL;http://www.twse.com.tw/ch/trading/exchange/FMTQIK/genpage/Report" & y & m & "/" & y & m & "_F3_1_2.php?STK_NO=&myear=" & y & "&mmon=" & m
Application.EnableCancelKey = xlErrorHandler
Set WebSht大盤 = Sheets("大盤指數")
WebSht大盤.Cells.Clear
With WebSht大盤.QueryTables.Add(Connection:= _
大盤指數URL, Destination:=WebSht大盤.[A2])
.Name = "201507_F3_1_2.php?STK_NO=&myear=2015&mmon=07"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.WebSelectionType = xlSpecifiedTables
.WebFormatting = xlWebFormattingNone
.WebTables = "8"
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.WebDisableRedirections = False
.Refresh BackgroundQuery:=False
.Delete
End With
101: ErrNo = Err.Number
Set WebSht大盤 = Nothing
End Sub
作者:
rinkenny
時間:
2016-9-9 19:16
我也遇到這個問題,請問有哪位大大可供解答嗎?
作者:
zyzzyva
時間:
2016-9-9 23:44
回復
2#
rinkenny
那兩個網址已經失效了吧?我試是連不到。
新的應該是
http://www.twse.com.tw/ch/trading/indices/MI_5MINS_HIST/MI_5MINS_HIST.php?myear=105&mmon=08
http://www.twse.com.tw/ch/trading/indices/MI_5MINS_HIST/MI_5MINS_HIST.php?myear=105&mmon=07
作者:
white5168
時間:
2016-9-10 16:58
你要的是這個網頁的網址嗎?http://www.tse.com.tw/ch/trading/indices/MFI94U/MFI94U.php
作者:
rinkenny
時間:
2016-9-12 17:47
回復
3#
zyzzyva
不好意思,我沒看清楚,連結網址是
http://www.twse.com.tw/ch/trading/exchange/FMTQIK/FMTQIK.php?myear=105&mmon=08
但我是想存成CSV檔,一直找不到CSV的連結,請問有辦法知道嗎?
作者:
zyzzyva
時間:
2016-9-12 18:56
回復
5#
rinkenny
http://www.twse.com.tw/ch/trading/exchange/FMTQIK/FMTQIK.php?
post data:
download:csv
query_year:2016
query_month:8
要用post的方式
作者:
jsleee
時間:
2016-9-15 07:48
能否有簡單的範例,使用POST的方法
我也很有興趣
感謝
作者:
zyzzyva
時間:
2016-9-15 11:08
本帖最後由 zyzzyva 於 2016-9-15 11:10 編輯
回復
jsleee
post的資料請依需求自行修改。
[attach]25256[/attach]
7#
作者:
jsleee
時間:
2016-9-17 21:02
回復
8#
zyzzyva
您好,測試您提供的程式碼,執行到以下這一行程式碼會停掉
oStream.SaveToFile ("C:\file.csv")
出現的異常碼為
執行階段錯誤 '3004'
寫入檔案失敗
另一個問題,這樣的語法適用於 證交所各網頁嗎?如果我只是想將以下的網頁 依照我所指定的 "分類項目" 抓到Excel工作表中,改如何下指令呢?
http://www.twse.com.tw/ch/trading/fund/MI_QFIIS/MI_QFIIS.php
很抱歉這部分摸索很久,就是不得其門而入,煩請抽空解惑,感恩
JS
作者:
zyzzyva
時間:
2016-9-18 21:28
回復
9#
jsleee
請檢查一下該路徑在您的電腦是否存在,若是,請檢查該路徑下該名稱之檔案是否已存在。
如果是要直接下載到excel裡,建議使用querytable,可以參考彰化大的這篇
http://blog.bestdaylong.com/2016/08/excel_23.html
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)