返回列表 上一主題 發帖

符合條件, 刪除多行

提供在工作表直接方式(文字請手動貼入):
Sub TEST20150903_2()
Dim Arr, Brr, R&, C&, i&, j%, TM, TT$, T, N&
TM = Timer
With ActiveSheet.UsedRange
  Arr = .Value:  Brr = .Columns(1)
  R = UBound(Arr, 1): C = UBound(Arr, 2)
End With

TT = "lang ""Traditional Chinese"""
For i = R To 1 Step -1
  For j = 1 To C
    If InStr("_" & Arr(i, j), TT) > 1 Then T = 1: Exit For
  Next
  If T = 0 Then Brr(i, 1) = i Else Brr(i, 1) = "": N = N + 1
  For j = 1 To C
    If IsNumeric(Arr(i, j) & "") Then T = 0: Exit For
  Next j
Next
[K1].Resize(UBound(Brr)) = Brr
[A:K].Sort Key1:=[K1], Order1:=xlAscending, Header:=xlNo
Rows(R - N + 1 & ":" & R + 1).Clear
[K:K].Clear

MsgBox "完成.共刪除 " & N & " 行.耗時 " & Timer - TM & " 秒"
End Sub
 
這是第二種方法,範例檔有第一種方法,速度慢了許多:
Xl0000085.rar (261.43 KB)
 

TOP

第三種方式,刪除後輸出一文字檔(unicode格式):
  1. Sub TEST20150903_3()
  2. Dim Arr, Brr, Crr, R&, C&, i&, j%, TM, TT$, T, N&
  3. Dim S, ST, uFile, TestObj, TxtFile
  4. TM = Timer
  5. Arr = Range([A1], ActiveSheet.UsedRange).Value
  6. R = UBound(Arr, 1): C = UBound(Arr, 2)
  7.  
  8. ReDim Brr(1 To R, 1)
  9. TT = "lang ""Traditional Chinese"""
  10. For i = R To 1 Step -1
  11.   ST = ""
  12.   For j = C To 1 Step -1
  13.     S = Arr(i, j)
  14.     If ST <> "" And S = "" Then S = Chr(9)
  15.     ST = S & ST
  16.   Next
  17.   If InStr("_" & ST, TT) > 1 Then T = 1
  18.   If T = 0 Then N = N + 1: Brr(N, 0) = i: Brr(N, 1) = ST
  19.   If IsNumeric(ST) Then T = 0
  20. Next i
  21.  
  22. With Sheets("結果表") '此段用來檢查,可以刪去
  23.   .[A:B].Clear
  24.   .[A1:B1].Resize(N) = Brr
  25.   .[A:B].Sort Key1:=.[A1], Order1:=xlAscending, Header:=xlNo
  26.   Application.Goto .[A1]
  27. End With
  28.  
  29. uFile = ThisWorkbook.Path & "\VVV.TXT"
  30. If Dir(uFile) <> "" Then Kill uFile
  31. Set TestObj = CreateObject("Scripting.FileSystemObject")
  32. Set TxtFile = TestObj.OpenTextFile(uFile, 8, True, -1)
  33. For i = N To 1 Step -1
  34.   TxtFile.WriteLine Brr(i, 1)
  35. Next i
  36. TxtFile.Close
  37.  
  38. MsgBox "完成.共刪除 " & R - N & " 行.耗時 " & Timer - TM & " 秒"
  39. End Sub
複製代碼
Xl0000085v02.rar (267.16 KB)
 

TOP

        靜思自在 : 願要大、志要堅、氣要柔、心要細。
返回列表 上一主題