看板 Office 關於我們 聯絡資訊
軟體:Excel 版本:2010 i=2 Do If XXX then J=2 Do IF XXX then Exit Do End IF J=J+1 Loop Until len(Worksheets("工作表2").Cells(J,1).Value)=0 End If I=I+1 Loop Until len(Worksheets("工作表1").Cells(I,1).Value)=0 工作表1,2皆有近2萬筆 每次都跑到當掉,請問這有解嗎?? 除了把資料導入資料庫以外 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 59.120.143.229 ※ 文章網址: https://www.ptt.cc/bbs/Office/M.1505440814.A.8FB.html
soyoso: 想法為內層判斷如果是儲存格符合某值就exit do來看,以 09/15 10:52
soyoso: range.find或工作表函數match來回傳儲存格或列號 09/15 10:52
soyoso: 該儲存格以上的範圍為原po要執行其他動作 09/15 10:52
soyoso: 就應可將do loop until len(worksheets("工作表2")... 09/15 10:52
soyoso: 取消掉 09/15 10:52
soyoso: 外層判斷如果是儲存格符合某值而執行接下來動作的話 09/15 10:52
soyoso: 迴圈於autofilter可見儲存格range.specialcells集合 09/15 10:53
soyoso: 、range.find或工作表函數match(需調整範圍) 09/15 10:53
soyoso: 來針對於符合的儲存格執行 09/15 10:55
lowcat: 在內層迴圈加入 docents 就能減少沒回應問題,再來就是 09/16 12:39
lowcat: 減少使用cells比對cells,就能稍微提高速度 09/16 12:39
soyoso: docents是什麼?google excel vba docents並沒看到相關的 09/16 13:10
soyoso: 是要提doevents這個函數嗎 09/16 13:12
lowcat: 對啦 doevents 字打錯了,感謝糾正 09/16 21:45