返回列表 上一主題 發帖

有關EXCEL VBA 抓取不到完整網址CSV問題

請教如何運用 VBA 把 網路*.csv 的檔案下載到EXCEL的表格裏?

請教如何運用 VBA 把
  特定日期的  鉅額交易日成交資訊 -  資料
下載到EXCEL的表格裏?
參考網址:
http://www.twse.com.tw/ch/trading/block/BFIAUU/BFIAUU.php





請教問題102.11.8.rar (17.84 KB)

TOP

本帖最後由 GBKEE 於 2013-11-9 17:13 編輯

回復 1# vesperlee
URL; http://www.twse.com.tw/ 多出一空格不適用2003後的新版本,
謝謝stillfish00幫忙除錯,已更正為 URL;http://www.twse.com.tw/
  1. Option Explicit
  2. Sub TEXT_102()
  3.     Dim YMD_day As String, N As Name, webURL As String
  4.     YMD_day = InputBox("輸入 民國年度日期 : 102/10/07", "下載特定日期的資料", Format(Date - 1, "E/MM/DD"))  
  5.     With Sheets("下載資料")
  6.         For Each N In .Names
  7.             N.Delete
  8.         Next
  9.         .Cells.Clear
  10.        'GetData_URL = "http://www.twse.com.tw/ch/trading/block/BFIAUU/BFIAUU.php?edition=ch&filename=genpage/A" & YMD_day & ".dat&type=csv"
  11.         webURL = "URL;http://www.twse.com.tw/ch/trading/block/BFIAUU/BFIAUU.php?input_date=" & YMD_day & "&login_btn=查詢.dat"
  12.         With .QueryTables.Add(Connection:=webURL, Destination:=.Range("A1"))
  13.             .WebSelectionType = xlSpecifiedTables
  14.             .WebFormatting = xlWebFormattingNone
  15.             .WebTables = "data_table"
  16.             .WebPreFormattedTextToColumns = True
  17.             .WebConsecutiveDelimitersAsOne = False
  18.             .WebSingleBlockTextImport = False
  19.             .WebDisableDateRecognition = False
  20.             .WebDisableRedirections = True
  21.             .Refresh BackgroundQuery:=False
  22.         End With
  23.     End With
  24. End Sub
複製代碼
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

回復 2# GBKEE

執行到 .Refresh BackgroundQuery:=False 便出現 1004 的錯誤訊息。
請教您,這會是甚麼狀況?

TOP

本帖最後由 GBKEE 於 2013-11-9 11:10 編輯

回復 3# c_c_lai
少了一點 .Range("A1"),謝謝你的測試.(2#的程式碼已加上一點了)
因為作用中的工作表不是Sheets("下載資料")時,少了一點就是作用中的工作表的Range("A1")
  1. With .QueryTables.Add(Connection:=webURL, Destination:=.Range("A1"))
複製代碼
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

本帖最後由 c_c_lai 於 2013-11-9 11:31 編輯
回復  c_c_lai
少了一點 .Range("A1"),謝謝你的測試.(2#的程式碼已加上一點了)
因為作用中的工作表不是S ...
GBKEE 發表於 2013-11-9 11:00

之前我亦加上了一 ".", 還是一樣的結果。
Destination:=.Range("A1")
我也是在找原因。 在 2003  能執行嗎?

TOP

回復 5# c_c_lai
上傳檔案看看
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

回復 6# GBKEE
活頁簿1.rar (9.73 KB)
目前無論是上傳附件或圖片,都必須另外使用 IE,
無法在 FireFox 內執行,非常地不方便,我也跟
小誌版主提過,還是無法上船,蠻困擾的。

TOP

Sub TEXT_102()
    Dim YMD_day As String, N As Name, webURL As String
    YMD_day = InputBox("輸入 民國年度日期 : 102/10/07", "下載特定日期的資料", Format(Date - 1, "E/MM/DD"))
    With Sheets("下載資料")
       For Each N In .Names
            'N.Delete
       Next
        .Cells.Clear
       GetData_URL = "URL;http://www.twse.com.tw/ch/trading/block/BFIAUU/BFIAUU.php?edition=ch&filename=genpage/A" & YMD_day & ".dat&type=csv"
        'webURL = "URL; http://www.twse.com.tw/ch/trading/block/BFIAUU/BFIAUU.php?input_date=" & YMD_day & "&login_btn=查詢.dat"
        With .QueryTables.Add(Connection:=GetData_URL, Destination:=.Range("A1"))
            .WebSelectionType = xlSpecifiedTables
            .WebFormatting = xlWebFormattingNone
            .WebTables = "data_table"
            .WebPreFormattedTextToColumns = True
            .WebConsecutiveDelimitersAsOne = False
            .WebSingleBlockTextImport = False
            .WebDisableDateRecognition = False
            .WebDisableRedirections = True
            .Refresh BackgroundQuery:=False
        End With
    End With
End Sub

TOP

回復 7# c_c_lai
你的檔案2003沒問題的,須請2007,2010來試試看
(目前無論是上傳附件或圖片,都必須另外使用 IE,會是這原因...)
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

回復 9# GBKEE
應用 #8 的 GetData_URL 便 OK 了。
  1.         GetData_URL = "URL;http://www.twse.com.tw/ch/trading/block/BFIAUU/BFIAUU.php?edition= _
  2.                                                                                      ch&filename=genpage/A" & YMD_day & ".dat&type=csv"
  3.         '  webURL = "URL; http://www.twse.com.tw/ch/trading/block/BFIAUU/BFIAUU.php?input_date= _
  4.                                                                                     " &  YMD_day & "&login_btn=查詢.dat"
複製代碼
內容是有些微不同,就是不甚了解它的實質套用、及如何應用。

TOP

        靜思自在 : 成功是優點的發揮,失敗是缺點的累積。
返回列表 上一主題