我有几千列数据,我需要在查看下一列之前删除每个列中的重复记录。我有这个代码是在我录制宏时创建的,但是它只执行我专门输入的列,我希望它继续查看将来的列,直到没有更多的数据。
Sub DUPLICATE()
'
' DUPLICATE Macro
'
' Keyboard Shortcut: Ctrl+d
'
ActiveSheet.Range("$T$1:$T$12").RemoveDuplicates Columns:=1, Header:=xlNo
Columns("U:U").Select
ActiveSheet.Range("$U$1:$U$12").RemoveDuplicates Columns:=1, Header:=xlNo
Columns("V:V").Select
ActiveSheet.Range("$V$1:$V$12").RemoveDuplicates Columns:=1, Header:=xlNo
Columns("W:W").Select
ActiveSheet.Range("$W$1:$W$12").RemoveDuplicates Columns:=1, Header:=xlNo
Columns("X:X").Select
ActiveSheet.Range("$X$1:$X$12").RemoveDuplicates Columns:=1, Header:=xlNo
End Sub
答案 0 :(得分:0)
这应该可以解决问题:
Sub DeleteDublicates()
Dim i As Integer
For i = 1 To ActiveSheet.Cells(1, Columns.Count).End(xlToLeft).Column Step 1
ActiveSheet.Range(Cells(1, i), Cells(Cells(Rows.Count, i).End(xlUp).row, i)).RemoveDuplicates Columns:=1, Header:=xlNo
Next i
End Sub