- 帖子
- 5923
- 主題
- 13
- 精華
- 1
- 積分
- 5986
- 點名
- 0
- 作業系統
- win10
- 軟體版本
- Office 2010
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台灣基隆
- 註冊時間
- 2010-5-1
- 最後登錄
- 2022-1-23
        
|
5#
發表於 2010-7-25 17:57
| 只看該作者
回復 4# lman
程式碼內容沒有匯入資料存放的儲存格
為何放A3可以自動更新
因為程式套上你附檔工作表中已有一個外部資料來源所傳回之資料的查詢表 並指定了網址
只要沒有刪除這查詢表 執行程式 就會更新資料
With ActiveSheet.QueryTables(1) '代表指定工作表中外部資料來源所傳回之資料的第一個查詢表
.Connection = _
"URL;http://www.twse.com.tw/ch/trading/exchange/MI_INDEX/genpage/Report" & Format(ActiveSheet.[A1], "YYYYMM") & "/A112" & Format(ActiveSheet.[A1], "YYYYMMDD") & "MS.php?select2=MS&chk_date=" & Format(ActiveSheet.[A1], "EE/MM/DD") '查詢表的網址
如果是指定匯入資料存放的儲存格
- Sub Ex()
- Dim Rng As Range, OldRng$
- Set Rng = ActiveSheet.[J1] '指定新的位址 且已指定日期
- On Error GoTo QueryTablesAdd
- With Rng.QueryTable
- .Connection = _
- "URL;http://www.twse.com.tw/ch/trading/exchange/MI_INDEX/genpage/Report" & Format(Rng, "YYYYMM") & "/A112" & Format(Rng, "YYYYMMDD") & "MS.php?select2=MS&chk_date=" & Format(Rng, "EE/MM/DD")
- .WebSelectionType = xlSpecifiedTables
- .WebFormatting = xlWebFormattingNone
- .WebTables = "8"
- .WebPreFormattedTextToColumns = True
- .WebConsecutiveDelimitersAsOne = True
- .WebSingleBlockTextImport = False
- .WebDisableDateRecognition = False
- .WebDisableRedirections = False
- .Refresh BackgroundQuery:=False
- End With
- End
- QueryTablesAdd:
- OldRng = Rng.Value
- Rng.Value = ""
- With ActiveSheet.QueryTables.Add(Connection:= _
- "URL;http://www.twse.com.tw/ch/trading/exchange/MI_INDEX/genpage/Report201007/A11220100723MS.php?select2=MS&chk_date=99/07/23", Destination:=Rng)
- .Name = "大盤統計資訊"
- .WebTables = "8"
- .Refresh BackgroundQuery:=False
- .ResultRange.ClearFormats
- End With
- Rng.Value = OldRng
- Resume
- End Sub
複製代碼 |
|