You can fix your code like this:
Sub Delete_Duplicates()
ActiveSheet.Range("$A$1", Range("B2").End(xlDown)).RemoveDuplicates Columns:=Array(1, 2), Header:=xlYes
End Sub
As suggested by @SiddharthRout, the right way would be:
Sub Delete_Duplicates()
Dim LR As Long
'we get position of last non empty cell in column B
LR = Range("B" & Rows.Count).End(xlUp).Row
'remove duplicates
ActiveSheet.Range("$A$1:$B$" & LR).RemoveDuplicates Columns:=Array(1, 2), Header:=xlYes
End Sub
Try using second one, it's indeed better, because Range("B2").End(xlDown))
does not always return the last non empty cell in column B.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…