返回列表 上一主題 發帖

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

本帖最後由 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

本帖最後由 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

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

TOP

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

TOP

回復 10# c_c_lai
但傳回的永遠是102/11/08最近一天股市的資料
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

回復 13# c_c_lai
可能是 "查詢" 的問題
請問java 的網頁可以抓的下來嗎?
  1.     webURL = "URL; http://www.twse.com.tw/ch/trading/block/BFIAUU/BFIAUU.php?input_date=" & YMD_day & "&login_btn=%ACd%B8%DF.dat"
複製代碼
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

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

回復 18# stillfish00
謝謝幫忙除錯.
回復 19# c_c_lai
stillfish00 已幫忙除錯
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

回復 22# joey0415
又多一個網址可web匯入,大夥熱烈的交流.
但樓主vesperlee,卻一點反應都沒有.(我們是剃頭擔子一頭熱的)
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

回復 31# jak
  1. Option Explicit
  2. Sub ExA()
  3.     With ActiveSheet
  4.         With .QueryTables.Add("URL;http://www.twse.com.tw/ch/trading/block/BFIAUU/BFIAUU.php?combination_choice=sub&cno=1&input_date=102/11/06", .[A1])
  5.             .WebSelectionType = xlSpecifiedTables
  6.             .WebFormatting = xlWebFormattingNone
  7.             .WebTables = """data_table"""
  8.             .WebPreFormattedTextToColumns = True
  9.             .WebConsecutiveDelimitersAsOne = True
  10.             .WebSingleBlockTextImport = False
  11.             .WebDisableDateRecognition = False
  12.             .WebDisableRedirections = False
  13.             .Refresh BackgroundQuery:=False
  14.         End With
  15.     End With
  16. End Sub
  17. Sub ExB()
  18.     With ActiveSheet
  19.         With .QueryTables(1)
  20.            ' .WebSelectionType = xlSpecifiedTables
  21.            ' .WebFormatting = xlWebFormattingNone
  22.            ' .WebTables = """data_table"""
  23.            ' .WebPreFormattedTextToColumns = True
  24.            ' .WebConsecutiveDelimitersAsOne = True
  25.            ' .WebSingleBlockTextImport = False
  26.            ' .WebDisableDateRecognition = False
  27.            ' .WebDisableRedirections = False
  28.             .Refresh BackgroundQuery:=False
  29.         End With
  30.     End With
  31. End Sub
複製代碼
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

回復 33# joey0415
Sub ExA() 是新增一個QueryTable
Sub ExB() 是延續這QueryTable中查詢,不必一直用.QueryTables.Add,會佔用資源
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

        靜思自在 : 對父母要知恩,感恩、報恩。
返回列表 上一主題