VBA Excel .RemoveDuplicates和.Range语法
我试图删除电子表格A列中的所有重复项。 这是迄今为止唯一对我有用的东西:
ActiveSheet.Range("A1:B100").RemoveDuplicates Columns:=Array(1, 1), Header:=xlNo
我的目标是能够只select列A中的值的单元格 ,然后删除重复项。 我试过这个:
ActiveSheet.Range("A1", Range("A1").End(xlDown)).RemoveDuplicates Columns:=Array(1, 1), Header:=xlNo
我得到一个“无效的过程调用或参数”错误。 另外我也试过:
ActiveSheet.range("A1:A100").RemoveDuplicates Columns:=Array(1, 1), Header:=xlNo
为了只select列“A”的前100个单元格,我也得到了同样的错误。 我做错了什么?
如果您只想处理单个列的已用部分:
Sub OnlyColumnA() Dim N As Long N = Cells(Rows.Count, "A").End(xlUp).Row ActiveSheet.Range("A1:A" & N).RemoveDuplicates Columns:=1, Header:=xlNo End Sub
笔记:
在这个代码中, N用数据定义列A中最后一个单元格的行号。 所以如果列A中的最后一个数据单元格是A35 ,那么N的值就是35 。
因此,expression式Range("A1:A" & N)
与Range("A1:A35")
,但没有硬编码的35 。