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