返回列表 上一主題 發帖

[發問] 集保戶股權分散表查詢 抓每週資料

回復 20# chang0833
GBKEE版大真的還是要找你求救~"~
自己找了了很久,還是不知道QueryTable 屬性的用法
需用哪一個屬性設定才能不下載網頁儲存格格線???
麻煩版大及高手幫忙解答,感激不盡!!

TOP

[版主管理留言]
  • GBKEE(2017/7/29 09:18): 2010 ,2003 那程式都下載都沒有格線,所以請你上傳檔案看看那裡出錯


版大程式碼是用你的
圖左邊是加入版大後來修正的
想把格線也同時取消
一直找不到方法,麻煩版大幫忙,謝謝

TOP

  1. Sub Ex1()
  2. Cells.Clear
  3.     Dim Ar(), a As Variant, i As Integer, stkno As String, Qur As String, DateVar As Integer, Sh As Worksheet
  4.     With CreateObject("InternetExplorer.Application")
  5.         .Navigate "http://www.tdcc.com.tw/smWeb/QryStock.jsp"
  6.         Do While .Busy Or .ReadyState <> 4: DoEvents: Loop
  7.         Set a = .Document.ALL.tags("option") '資料日期的內容
  8.         ReDim Ar(a.Length - 1)
  9.         For i = 0 To a.Length - 1
  10.             Ar(i) = a(i).innerHTML
  11.         Next
  12.         .Quit
  13.     End With
  14.     stkno = Sheets("目標股票").Range("B2").Value    '
  15.     If stkno = "" Then Exit Sub
  16.     Set Sh = ActiveSheet             '指定工作表
  17.     With Sh
  18.         For DateVar = 0 To UBound(Ar)
  19.             Qur = "http://www.tdcc.com.tw/smWeb/QryStock.jsp?SCA_DATE=" & Ar(DateVar) & "&SqlMethod=StockNo&StockNo=" & stkno & "&StockName=&sub=%ACd%B8%DF"
  20.             .QueryTables.Add "URL;" & Qur, .Cells(1 + (DateVar * 32), "A")
  21.             '.Cells(1 + (DateVar * 32), "A")  A欄間隔 32列
  22.             With .QueryTables(1)
  23.                 .WebSelectionType = xlSpecifiedTables
  24.                 .WebFormatting = xlWebFormattingNone
  25.                 .WebTables = "6,7,8"
  26.                 .WebPreFormattedTextToColumns = True
  27.                 .WebConsecutiveDelimitersAsOne = True
  28.                 .WebSingleBlockTextImport = False
  29.                 .WebDisableDateRecognition = False
  30.                 .WebDisableRedirections = False
  31.                 .PreserveFormatting = False
  32.                 .Refresh BackgroundQuery:=False
  33.                 Sh.Names(.Name).Delete '刪掉工作表上的名稱
  34.                 .Delete                '刪掉這QueryTable
  35.             End With
  36.         Next
  37.     End With
複製代碼
版大這是我用的程式碼。

TOP

回復 23# chang0833

我將工作表格線改成紅色,沒有下載到網頁格式顏色
你沒上傳檔案,我莫宰羊ㄚ


   
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

版大還是謝謝你,我後來用手動的把格線消除了
想說可不可以由電腦跑程式,順便學習一下,感恩^^

TOP

回復 9# GBKEE
GBKEE 大大的 Web 版很好用,我常常利用這個程式查詢,但前幾天該相關網頁似乎有修改過,現在如果跑程式會出現如下的錯誤:
執行階段錯誤 '9':
陣列索引超出範圍

偵錯的話會停在第9行的
ReDim Ar(a.Length - 1)

不知如何因應這個新修的網頁去修改程式?
謝謝!

TOP

回復 26# oligo

哈囉,我剛剛上傳了一個新檔案,用來抓取改版後的資料,請參考
    http://forum.twbts.com/thread-20646-1-1.html
希望有幫到您~
Excel VBA網頁資料收集教學:
http://forum.twbts.com/thread-20848-1-1.html

TOP

        靜思自在 : 口說好話、心想好意、身行好事。
返回列表 上一主題