Re: [算表] vba迴圈刪除類似字眼資料?

看板Office作者 (oi)時間8年前 (2018/02/26 21:49), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串4/4 (看更多)
建議你把range改成cells 因為你用range("A" & i) 程式每一次要幫你合併文字,還要再轉成絕對座標 這會浪費很多時間 我寫了一小段測試程式 你可以比較看看時間差異 Sub TestPerformance() Dim st As Date Dim et As Date Dim i As Long st = Now() For i = 1 To 1000000 Range("A" & i) = i Next et = Now() Dim it1 As Integer it1 = DateDiff("s", st, et) st = Now() For i = 1 To 1000000 Cells(i, 1) = i Next et = Now() Dim it2 As Integer it2 = DateDiff("s", st, et) MsgBox "Range = " & it1 & vbCrLf & "Cells = " & it2 End Sub ※ 引述《ptguitar (佩蒂吉他)》之銘言: : 上次有問類似問題 : 現在遇到困難就是 : 遇到超大量資料 數十萬筆 : 而要刪除的條件很多 : 速度很慢 : 不知道有什麼更快速寫法 : === : ※ 引述《ptguitar (佩蒂吉他)》之銘言: : Sub test001() : Dim YY, XX, ZZ : YY = "*海外分行*" : XX = "*機構名稱*" : ZZ = "*工作表*" : For i = [A65536].End(xlUp).Row To 1 Step -1 : If Range("A" & i).Text Like YY Or Range("A" & i).Text Like XX Or Range("A" : & i).Text Like ZZ Then : Rows(i).Delete : End If : Next : End Sub -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 5.37.65.74 ※ 文章網址: https://www.ptt.cc/bbs/Office/M.1519652962.A.C8A.html
文章代碼(AID): #1Qb11YoA (Office)
文章代碼(AID): #1Qb11YoA (Office)