【发布时间】:2019-05-20 16:03:53
【问题描述】:
我有一个包含大约 60,000 行的工作表。如果单个列(批处理列)包含重复项,我想删除行中的所有数据。
其他列的数据存在一些差异,但我只希望每批只有一行。
我尝试使用删除重复项,但由于其他列的差异,它不会删除所有内容。
我写了一个宏,但是速度很慢。
有人知道如何加快速度吗?或者可能是更好的方法?
Sub Pull_Non_Variable()
i = 0
Do
Current_Batch = Cells(i + 2, "J")
'Cells(i + 2, "J").Select
Next_Batch = Cells(i + 3, "J")
'Cells(i + 3, "J").Select
If Current_Batch = "" Then
Exit Do
End If
If Current_Batch = Next_Batch Then
Rows(i + 2).Delete
'Range(Cells(i + 2, "A"), Cells(i + 2, "BI")).Delete
Else
i = i + 1
End If
Loop
End Sub
【问题讨论】:
-
使用删除重复项时,您可以选择相关列。有了这么多的数据,值得把它放在一个数组中,只有在完成重复数据删除后才写回工作表。