我正在开发一个项目,我正在使用VBA从95列中删除重复项。目前我有95行代码可以工作,但宏运行速度明显慢,因为从40行扩展到95.也许这只是它的性质,但我希望了解更多有关VBA的信息,看看是否有更简单的方法解决这个问题。对于95个单独的列,我当前的宏看起来像这样:
Range("g230:g324").RemoveDuplicates Columns:=1, Header:=x1No
Range("h230:h324").RemoveDuplicates Columns:=1, Header:=x1No
Range("i230:i324").RemoveDuplicates Columns:=1, Header:=x1No
Range("j230:j324").RemoveDuplicates Columns:=1, Header:=x1No
它有效,但速度很慢。有没有办法选择整个范围的单元格并让宏删除每行中的重复项? 我在较小的样本大小上尝试了不同的代码来测试它,我收到了1004运行时错误。
Dim Dupes As Range: Set Dupes = Sheet1.Range("M3:X30")
Dupes.RemoveDuplicates Columns:=Array(95, 12), Header:=xlYes
我不相信它的定义是错误的,就像我输入Dupes = 2
它填充数字2的范围一样。