나는 18000 명의 고객이있는 데이터 시트를 가지고 있습니다. 이 목록의 약 10 %는 동일한 고객의 복제본이며 두 번 이상 중복되는 경우도 있습니다.VBA - RemoveAllDuplicateButOne()
나는 모든 중복을 찾고 데이터의 전체 행을 제거하기 위해 VBA를 사용하고 싶습니다. 하나의 데이터 행 (고객 1 명) 만 남겨 둡니다.
나는 온라인이 코드를 건너 :
Sub RemoveAllDuplicateButOne()
Dim LR As Long: LR = Range("A" & Rows.Count).End(xlUp).Row
ActiveSheet.Range("A1:A" & LR).RemoveDuplicates Columns:=1, Header:=Name
End Sub
그러나이 VBA 코드는 컬럼에 아래 행에서 열을 이동에만 A 행에서 제거 중복을 제거하고 열을 삭제하고 같은 공간이 방금 삭제되었습니다. 모든 종류의 고객 데이터를 혼합한다는 의미입니다.
나는 다음과 같은 코드를 시도했지만 나를 위해 작동하지 않습니다 내가 식별자에 사용할 수있는
ActiveSheet.Range("A1:W1800").RemoveDuplicates
Columns:=Array(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19), Header:=xlYes
열은 열 A (IP 주소), Coumn G (이메일 주소), 열 H 있습니다 (전화 번호). 이상적으로는 먼저 G 열을 사용하고 그 다음 H를 쓰고 VBA를 실행하고 싶습니다.
명확히하기 위해 식별 된 복제의 전체 행을 삭제하고 싶습니다.
어리석은 질문이나 복잡한 것으로 보이는 경우 죄송합니다. 잘 모르겠지만 검색을 해본 결과 답변을 찾을 수 없습니다. 어떤 도움이라도 감사 할 것입니다. 감사합니다.
Excel 중복 제거 기능을 사용하지 않는 이유는 무엇입니까? –
시도해 보니 전체 행이 아닌 중복 된 열만 제거됩니다. 중복 제거 열 아래의 열이 오염 된 행을 남기고 그 위치로 이동합니다. –
중복 제거 열을 제거하지 마십시오! 전체 행을 선택하면 전체 행이 삭제됩니다. –