尽管这对于 excel 来说是一种不寻常的用途,但假设每个连接操作都会占用内存,只是在用完之前释放一些内存。
不是那么优雅,尽管您可以将 2000 行复制并粘贴到 A 列作为值。还可以选择删除 A2:AC2002(可能不需要的已使用数据)。关闭自动计算也可能有所帮助。
使用宏记录器中的宏简单地记录您执行此操作的宏[相对定位]。首先选择您已完成的公式。
非常粗略的代码:
Sub Macro5()
With Application
.EnableEvents = False
.ScreenUpdating = False
End With
Dim i As Long
For i = 0 To 32
Selection.Copy
ActiveCell.Offset(1, 0).Range("A1:A2000").Select
ActiveSheet.Paste
Application.CutCopyMode = False
ActiveCell.Offset(-1, 0).Range("A1:A2000").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
ActiveCell.Offset(2000, 0).Range("A1").Select
Next i
With Application
.EnableEvents = True
.ScreenUpdating = True
End With
End Sub