大家新年快樂! 由於工作環境改變,原先設計之巨集已不敷使用,故東湊西拼出一個堪用版,不過執行時間都甚長,約20分鐘。 故列示一個極簡單的附件請大家協助提出建議。 使用方式: 1. 請將附件五個檔案都解壓縮至同一路徑 2. 打開piny_auto_R2.06 3. B2請填201311 4. B3請填否 5. B4至B7請選擇清單中之任意組合 6. A33至A52可於任意多格填寫二位數至四位數 7. D33, D35, B55, B56請選擇清單中之任意組合 8. 之後按下「執行基準分析」 附檔有模擬一極簡情況,我的電腦需運行32秒。由於實際檔案大小大約是本版之30幾倍,故相同條件變成需運行約20分鐘。 執行基準分析的運行大致如下: 1. 於同路徑下開啟四個檔案,篩選後不存檔後關閉 2. A33至A52即檢查所開啟之info_C檔案中result活頁之U欄,那一筆公司符合條件。 舉例,若A33填寫13,則U欄只要是1300-1399皆符合;若A34填寫489,則U欄只要是4890-4899皆符合;若A37填寫2834,則U欄是2834即符合 3. B33至B52即檢查所開啟之info_C檔案中result活頁之W欄,那一筆公司符合條件。 4. C33至C52即檢查所開啟之info_C檔案中result活頁之Y欄及Z欄,那一筆公司有包含即符合條件。 5. 2,3,4為聯集判斷(可參考公式寫法,不過顯然此方式絕對不效率)
- With Range("EB3").Resize(xEndrow - 2)
- .Formula = _
- "=SUMPRODUCT((LEFT(U3,LEN(DW$33:DW$52))=DW$33:DW$52&"""")*(DW$33:DW$52<>"""")+(LEFT(W3,LEN(DX$33:DX$52))=DX$33:DX$52&"""")*(DX$33:DX$52<>"""")+(LEN(SUBSTITUTE(Y3&"" ""&Z3,DY$33:DY$52,""""))<>LEN(Y3&"" ""&Z3)))"
- .Value = .Value
- End With
复制代码
6. D33, D35係判斷公司所有地區(F欄),與5為交集判斷 7. 判斷OK的公司會算到auto檔案的all_CU與info_CU活頁 8. 定量及定性活頁即所求 |