|
各位老师:
下面的代码运行时会提示内存溢出,运行到红色这一段就有报警;不知道什么原因,还望老师帮忙看一下
Sub 删除机床图号相同行()
Dim arr, rng As Range, d, i&, p$, irow&, x$
Dim s As Single
s = Timer
Application.ScreenUpdating = False
Set d = CreateObject("scripting.dictionary")
arr = ActiveSheet.UsedRange
irow = ActiveSheet.UsedRange.Rows.Count
Set rng = Cells(irow + 1, 4)
If IsArray(arr) = False Then Exit Sub
For i = UBound(arr) To 2 Step -1
x = arr(i, 8) & arr(i, 11)
If Not d.exists(x) Then d(x) = 1 Else Set rng = Union(rng, Cells(i, 4))
Next
rng.EntireRow.Delete
Application.ScreenUpdating = True
End Sub
|
|