엑셀 중복값 하나만 남기고 삭제 함수

엑셀 중복값 하나만 남기고 삭제 함수 사용하는 방법을 알아보겠습니다. 이 글에서는 IF 함수, COUNTIF 함수를 이용해서 중복 값을 삭제하고 딱 하나의 값만 남겨보도록 하겠습니다.




엑셀 중복값 하나만 남기고 삭제 함수

엑셀 중복값 하나만 남기고 삭제 함수 사용 방법입니다.


1.중복값이 규칙적으로 나와있는 경우

첫 번째는 중복 값이 규칙적으로 나와 있는 경우예요.

아래 2가지 함수를 활용해보겠습니다.

  1. IF 함수
  2. COUNTIF 함수


아래와 같은 데이터가 있습니다. 보시면 벤츠, BMW, 아우디가 각각 3개씩 대분류 열에 입력이 되어 있죠? 2개의 중복값은 제거하고 하나의 값만 남겨보도록 하겠습니다.

엑셀 중복값 하나만 남기고 삭제 함수 입력하기
엑셀 중복값 하나만 남기고 삭제 함수 입력하기

그러기 위해 아래와 같이 함수식을 입력해 줍니다.

=IF(COUNTIF(B3:C11,B3)=1,B3,””)


그 후 엔터키를 누르면 아래와 같이 E3 셀에 아무것도 나와 있지 않은 모습이 나오게 되요.

결과 값으로 아무것도 안 나온 모습
결과 값으로 아무것도 안 나온 모습



여기서 아래쪽으로 자동 채우기를 해주면 아래 사진처럼 하나의 값만 나오고 중복 값은 모두 제거가 됩니다.

아래쪽으로 자동 채우기
아래쪽으로 자동 채우기



자 그렇다면 왜 함수식이 이렇게 입력이 되는지 원리도 알아볼게요.


먼저 E3셀을 더블 클릭해 봤습니다. 그랬더니 B3 셀부터 C11까지의 데이터가 선택이 되어 있는 걸 알 수 있어요.

함수식 원리 이해하기
함수식 원리 이해하기

=IF(COUNTIF(B3:C11,B3)=1,B3,””)

먼저 COUNTIF 함수를 통해 B3셀부터 C11셀까지의 범위에서 B3셀의 개수를 찾는 겁니다.

그리고 IF 함수로 B3셀의 개수가 1개일 때는 B3셀이 나오게 하고, 1개가 아닌 경우에는 공백으로 표시가 되라 되게 해라라고 입력을 했죠? 현재 B3:C11 범위에서의 B3셀의 개수가 총 3개라서 공백이 나오게 된 것입니다.


그리고 E4셀을 더블 클릭해 봤는데요. B4에서 C12까지 범위에서의 B4셀의 개수가 현재 2개죠? 벤츠라는 글자가 두 개가 있지 않습니까? 마찬가지로 한 개가 아니기 때문에 공백이 나오게 된 것입니다.

E4 셀 더블클릭 한 모습
E4 셀 더블클릭 한 모습



이번엔 E5셀을 더블 클릭해 봤는데요. B5에서 C13까지의 범위에서의 B5셀 개수가 현재 1개죠? 1이기 때문에 B5셀 결과값인 벤츠라는 값이 나오게 된 것입니다.

E5 셀 더블클릭 한 모습
E5 셀 더블클릭 한 모습




2.중복값이 불규칙적으로 나와있는 경우

이번엔 중복 값이 불규칙적으로 나와 있는 경우에 중복 값을 모두 제거하고 하나의 값만 나오게 하는 방법을 알아보겠습니다.

아래 사진처럼 이름 부분에 중복 값이 여러 개 포함이 되어 있는 데이터가 있습니다.

중복 값이 불규칙적으로 나와 있는 경우 예시 데이터
중복 값이 불규칙적으로 나와 있는 경우 예시 데이터



여기서 중복 값을 제거하고 하나의 값만 나오게 하기 위해서 E3 셀에 아래와 같이 함수식을 입력해 봤습니다. 함수식은 위에서 사용했던 것과 똑같은 방식입니다.

함수식 입력 한 모습
함수식 입력 한 모습



그리고 엔터 키를 눌러주시고요. 아래쪽으로 자동 채우기를 해줍니다. 그럼 아래 사진처럼 중복 값은 모두 제거가 되고 하나의 고유한 값들만 나오게 되요.

아래쪽으로 자동 채우기
아래쪽으로 자동 채우기



근데 F열의 나이 부분도 같이 구해야 되지 않겠습니까? 따라서 나이도 구해 줄 건데요. 나이는 IFERROR 함수와 VLOOKUP 함수를 같이 사용해서 구해보도록 하겠습니다.

나이 데이터도 찾아오기
나이 데이터도 찾아오기

아래와 같이 함수식을 입력해 줍니다.

=IFERROR(VLOOKUP(E7,B3:C19,2,0),””)


=IFERROR(VLOOKUP(E7,B3:C19,2,0),””)

여기서 VLOOKUP 함수는 찾는 값(E7)의 다른 열의 값을 찾아주는 함수예요.

예를들어 E7에 입력되어 있는 이민정이라는 사람의 나이를 B3에서 C19까지의 데이터에서 찾아오고 싶은 경우 VLOOKUP 함수를 사용할 수 있는 겁니다.

이민정이라는 사람의 나이는 24세죠? 그래서 이 24라는 결과값을 찾아오는 거예요.

VLOOKUP 함수의 세 번째 인수에 2라고 입력이 되어 있는데요. B3 셀에서 C19까지의 범위에서 나이라는 결과값을 구할 것이지 않습니까? 현재 선택되어 있는 범위에서 나이는 두 번째 열에 위치해 있어요. 그래서 2를 입력한 거고요.

VLOOKUP의 네 번째 인수에는 정확한 값을 나오게 할 것이므로 0을 입력해 주면 됩니다.


=IFERROR(VLOOKUP(E7,B3:C19,2,0),””)

그리고 콤마를 입력하고 큰따옴표 2번을 입력했는데요.

IFERROR 함수는 결과 값이 오류가 아닌 경우에는 VLOOKUP 함수에 입력한 값이 나오게 해주고, 오류인 경우에는 큰따옴표 안의 공백이 나오도록 해주는 겁니다.



그리고 엔터 키를 눌러줍니다. 그럼 아래와 같이 이민정의 나이가 구해지는 걸 알 수 있습니다.

나이 데이터 찾아와진 모습
나이 데이터 찾아와진 모습



그리고 아래쪽으로 자동 채우기를 해주면 아래와 같이 결과값이 모두 나오게 돼요.

자동 채우기
자동 채우기


아래와 같이 이름과 나이까지 중복 값이 모두 제거된 채로 나오게 된 것을 알 수 있습니다.

중복 값 모두 제거 한 결과 모습
중복 값 모두 제거 한 결과 모습




추천 글

엑셀 VLOOKUP 함수 중복값 모두 반환하는 법

엑셀 VLOOKUP 함수 사용법 | 총정리

엑셀 2개 값 비교 방법 3가지

이상 엑셀 중복값 하나만 남기고 삭제 함수에 관한 글이었습니다.