[VBA ] 請教抓取網頁資料下拉式選單的問題

看板Visual_Basic作者 (歡迎證期信研究加好友)時間7年前 (2017/01/09 16:31), 編輯推噓1(1018)
留言19則, 2人參與, 最新討論串1/1
我使用Excel VBA抓取網頁資料,但是網頁上有下拉式選單 我要的資料藏在選單中,如果我直接打入網址,會抓到預設的選單 請問我該如何才能指定要抓取的資料呢? 台灣證交所網址: http://www.twse.com.tw/ch/trading/fund/MI_QFIIS/MI_QFIIS.php 預設的選項: http://i.imgur.com/ajGSKO1.jpg
要抓的選項: http://i.imgur.com/MYXqIUv.jpg
我要抓的是「ETF」的資料,但是預設是「水泥工業」 如果按照一般的自動匯入,進來的資料只會是「水泥工業」 請問這樣的問題該如何處理,謝謝~ -- 就將那幻夢般美麗的回憶揉碎,輕灑在我倆初相識的季節~~ 風起時,漫天飛舞的是.....難忘的紛飛片段... -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 60.251.139.141 ※ 文章網址: https://www.ptt.cc/bbs/Visual_Basic/M.1483950712.A.82D.html

01/09 22:04, , 1F
使用getElementsByName找到下拉式清單的名稱
01/09 22:04, 1F

01/09 22:05, , 2F
select2,然後對其從第一個ALL開始當作0,ETF為3
01/09 22:05, 2F

01/09 22:05, , 3F
用CreateObject("InternetExplorer.Application")
01/09 22:05, 3F

01/09 22:06, , 4F
將資料匯入
01/09 22:06, 4F

01/09 22:08, , 5F
01/09 22:08, 5F

01/09 23:36, , 6F
範例檔出現錯誤訊息,http://imgur.com/wwqsgbF.jpg
01/09 23:36, 6F

01/09 23:59, , 7F
另外請教,getElementsByName("select2")(0)
01/09 23:59, 7F

01/10 00:00, , 8F
select2是標籤名,那後面的(0)是甚麼意思呢?
01/10 00:00, 8F

01/10 06:35, , 9F
連結檔案內容重新修正,請重下一遍
01/10 06:35, 9F

01/10 06:36, , 10F
後面的0代表的是這個名稱是第幾次出現,若是第一次
01/10 06:36, 10F

01/10 06:36, , 11F
出現,則代表是0,當有多個下拉式選單使用同一個名稱
01/10 06:36, 11F

01/10 06:37, , 12F
時就能用這個來做區別
01/10 06:37, 12F

01/10 10:05, , 13F
更新後不會出現錯誤訊號了,但仍有兩個問題
01/10 10:05, 13F

01/10 10:06, , 14F
1、自動開啟IE後,仍顯示「水泥工業」並沒有跳到「ETF」
01/10 10:06, 14F

01/10 10:07, , 15F
2、資料並未載入到Excel檔中,僅僅只是開啟IE而已
01/10 10:07, 15F

01/10 10:08, , 16F
另請教,更新檔多加了一個Do While迴圈的用意是甚麼呢?
01/10 10:08, 16F

01/10 10:09, , 17F
感謝您的回答~
01/10 10:09, 17F

01/13 23:51, , 18F
連結已重新更改過,請重下一遍試試,內有註解
01/13 23:51, 18F

01/18 21:49, , 19F
已經可以使用了,感謝,我研究看看有問題再跟你請教
01/18 21:49, 19F
文章代碼(AID): #1OSqfuWj (Visual_Basic)