[算表] VBA 網路爬蟲 陣列請教

看板Office作者 (毛毛)時間1年前 (), 編輯推噓0(009)
留言9則, 2人參與, 1年前最新討論串1/1
軟體:Excel 版本:2003 公司遇到異常回饋時,會上內部系統查詢生產紀錄來釐清問題。 查詢系統的網址是有規律性的,因無法提供檔案故舉例。 網址結構如下所示: http://google&姓名=變數1&科目=變數2&Item=項目1&Item=項目2...之類的 我可能同時搜尋3個人的2個科目會跑出 http://google&姓名=王小明&科目=國文&Item=文言文&Item=應用文&Item=六書 http://google&姓名=李大華&科目=國文&Item=文言文&Item=應用文&Item=六書 http://google&姓名=陳美麗&科目=國文&Item=文言文&Item=應用文&Item=六書 http://google&姓名=王小明&科目=地理&Item=中國&Item=台灣 http://google&姓名=李大華&科目=地理&Item=中國&Item=台灣 http://google&姓名=陳美麗&科目=地理&Item=中國&Item=台灣 我的檔案Sheet1為查詢頁面,Sheet2為參數。 Sheet2欄位為  A   B   C   D   E 1科目 項目一 項目二 項目三 項目四 2國文 文言文 應用文 六 書  3地理 中 國 台 灣 4數學 排 列 三 角 5物理 力 學 光 學 電 學 我表單可能選擇文科,姓名輸入王小明和李大華和陳美麗會跑出下列組合去爬蟲 http://google&姓名=王小明&科目=國文&Item=文言文&Item=應用文&Item=六書 http://google&姓名=李大華&科目=國文&Item=文言文&Item=應用文&Item=六書 http://google&姓名=陳美麗&科目=國文&Item=文言文&Item=應用文&Item=六書 http://google&姓名=王小明&科目=地理&Item=中國&Item=台灣 http://google&姓名=李大華&科目=地理&Item=中國&Item=台灣 http://google&姓名=陳美麗&科目=地理&Item=中國&Item=台灣 目前程式碼是用土法煉鋼迴圈共同字串 & 取得變數 & 共同字串的方式組成URL。 再丟到網路爬蟲程式碼將個別網址結果存至陣列再解析。 但是當姓名數或科目數變多時,執行速度會變得非常慢, 想請教在組成網址這段程式碼有辦法寫成陣列來組合嗎? 例如:陣列1元素是共同字串,陣列2元素是變數,再組合運算得到網址。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 218.173.168.61 ※ 文章網址: https://www.ptt.cc/bbs/Office/M.1559320899.A.029.html
1年前
每個科目共同字串 & 取得變數 & 共同字串這方面如是用迴圈
06/01 08:22, 1F

1年前
連接的話,可改以join,分隔符號" ",rtrim來去除空格,
06/01 08:22, 2F

1年前
replace將空格取代為"&Item="
06/01 08:22, 3F

1年前
join的sourcearray以儲存格的話,有需要配合工作表函數
06/01 08:22, 4F

1年前
transpose
06/01 08:22, 5F

1年前
可減少這方面的迴圈的使用
06/01 08:22, 6F

1年前
或是在儲存格以輔助欄公式取得,再以變數 = range
06/01 08:22, 7F

1年前
巢狀迴圈將姓名連接至上述陣列內,看是否可以改善
06/01 08:22, 8F

1年前
謝謝soyoso大,明天上班來測試看看
06/02 08:55, 9F
文章代碼(AID): #1SyLb30f (Office)
短網址: https://pttweb.cc/s/Office/1SyLb30f