看板 Office 關於我們 聯絡資訊
軟體: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
soyoso: 每個科目共同字串 & 取得變數 & 共同字串這方面如是用迴圈 06/01 08:22
soyoso: 連接的話,可改以join,分隔符號" ",rtrim來去除空格, 06/01 08:22
soyoso: replace將空格取代為"&Item=" 06/01 08:22
soyoso: join的sourcearray以儲存格的話,有需要配合工作表函數 06/01 08:22
soyoso: transpose 06/01 08:22
soyoso: 可減少這方面的迴圈的使用 06/01 08:22
soyoso: 或是在儲存格以輔助欄公式取得,再以變數 = range 06/01 08:22
soyoso: 巢狀迴圈將姓名連接至上述陣列內,看是否可以改善 06/01 08:22
ji3g4al6al6: 謝謝soyoso大,明天上班來測試看看 06/02 08:55