|
楼主 |
发表于 2011-6-28 12:59
|
显示全部楼层
刚计算完毕,文件很大,数据基本就是一个A1延伸出的五百列,五万多行矩形区域,前辈的代码提示溢出,代码如下,请看看是否好更改:
Sub Macro1() '提示内存溢出
Sheets("KKK").Select
Dim arr, brr()
arr = Range("A1:QT" & Range("a65536").End(xlUp).Row + 1)
ReDim brr(1 To UBound(arr) - 1, 1 To UBound(arr, 2))
For i = 1 To UBound(arr) - 1
For j = 1 To UBound(arr, 2)
If arr(i + 1, j) = 0 And Len(arr(i + 1, j)) > 0 Then
x = Application.WorksheetFunction.Rank(arr(i, j), Range(Cells(i, 1), Cells(i, "QT")))
brr(i, x) = arr(i, j)
End If
Next j
Next i
Sheets("LLL").Range("A1").Resize(UBound(brr), UBound(brr, 2)) = brr
End Sub |
|