返回列表 上一主題 發帖

[發問] CreateObject("MSXML2.XMLHTTP.3.0") 無法抓取最新資料?

[發問] CreateObject("MSXML2.XMLHTTP.3.0") 無法抓取最新資料?

如下程式碼:為何網站資料更新了
但擷取出來的結果卻不會自動更新
十分鐘後再執行一次還是跟第一次執行的結果相同
請問要如何更新?
  1. Sub test()
  2. Set hq = CreateObject("MSXML2.XMLHTTP.3.0")
  3. hq.Open "get", "http://rate.bot.com.tw/xrt/flcsv/0/day", False
  4. hq.send
  5. MsgBox hq.responsetext
  6. End Sub
複製代碼
PKKO

"http://rate.bot.com.tw/xrt/flcsv/0/day"  ........ maybe

TOP

回復 1# PKKO
  1. Option Explicit
  2. Sub Ex()
  3. Dim hq As Variant, i As Integer, ii As Integer
  4. Set hq = CreateObject("MSXML2.XMLHTTP.3.0")
  5. hq.Open "get", "http://rate.bot.com.tw/xrt/flcsv/0/day", False
  6. hq.send
  7. '**Split 函數 傳回一個陳列索引從零開始的一維陣列,它包含指定數目的子字串。
  8. '**語法  Split(expression[, delimiter[, limit[, compare]]])
  9. hq = Split(hq.responsetext, vbCrLf)
  10. '**vbCrLf -> Chr(13) + Chr(10) = 結合換行字元與復位字元。
  11. ActiveSheet.Cells.Clear '**作用中工作頁的所有儲存格,清除文字及其格式
  12. '***讀取資料
  13. For i = 0 To UBound(hq)
  14.     For ii = 0 To UBound(Split(hq(i), ","))
  15.     ActiveSheet.Range("a1").Offset(i, ii) = Split(hq(i), ",")(ii)
  16.     Next
  17. Next
  18. '**讀取資料完畢
  19. MsgBox Join(hq, vbCrLf)
  20. End Sub
複製代碼
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

回復 3# GBKEE


    感謝超版大大,小弟拜讀一下
PKKO

TOP

回復 3# GBKEE


   好像 還是沒變押

TOP

換各寫法  
可 refresh 了

TOP

本帖最後由 GBKEE 於 2017-3-3 10:57 編輯

回復 5# jackyq

匯率沒有時時在變更
附檔可觀察看看

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

TOP

回復 6# jackyq


    如何換個寫法可變更?
因為我用原本的方法套用不同的網站資料
確實不會更新,電腦重開才會更新不知道為何
PKKO

TOP

回復 7# GBKEE


    感謝超版大大,原來自動更新可以這樣使用
我一直都是只會用下列方式自動多久執行一次
  1. ts2 = Now + TimeValue("00:05:00")
  2. '執行完畢後設定5分鐘過後再次執行本程式
  3. Application.OnTime ts2, "control_time2"
複製代碼
您的方式簡單多了
配合SHEET變動一起搭配程式碼即可
PKKO

TOP

回復 6# jackyq


請問大大您是如何換個寫法就可以更新了呢?
我測試還是無法更新耶
必須要檔案重新打開才會更新~
PKKO

TOP

        靜思自在 : 【為善競爭】人生要為善競爭,分秒必爭。
返回列表 上一主題