두 셀에서 쉼표로 구분된 값을 비교하고 Excel에서 중복되거나 고유한 값을 반환하는 방법은 무엇입니까?
아래 스크린샷과 같이 Column1과 Column2의 두 열이 있으며 열의 각 셀에는 쉼표로 구분된 숫자가 포함됩니다. Column1의 쉼표로 구분된 숫자를 Column2의 동일한 행에 있는 셀 내용과 비교하고 중복되거나 고유한 값을 모두 반환하려면 어떻게 해야 합니까?
이 자습서에서는 이 작업을 수행하는 데 도움이 되는 두 가지 방법을 제공합니다.
두 셀에서 쉼표로 구분된 값을 비교하고 수식을 사용하여 중복되거나 고유한 값을 반환합니다.
이 섹션에서는 두 셀의 쉼표로 구분된 값을 비교하고 두 셀 사이의 중복 값이나 고유 값을 반환하는 데 도움이 되는 두 가지 수식을 제공합니다.
주의 사항: 다음 수식은 365용 엑셀. 다른 버전의 Excel을 사용하는 경우, 아래 VBA 방법을 사용해보십시오.
위의 두 열을 예로 들어 Column1의 쉼표로 구분된 숫자와 Column2의 같은 행에 있는 쉼표로 구분된 숫자를 비교하여 중복되거나 고유한 값을 반환하려면 다음과 같이 하십시오.
중복 값 반환
1. 쉼표로 구분된 숫자로 지정된 두 셀 사이의 중복 숫자를 출력할 셀을 선택합니다. 이 경우 셀 D2를 선택한 다음 아래 수식을 입력하고 엔터 버튼 열쇠. 수식 셀을 선택하고 드래그 자동 완성 핸들 아래로 다른 행의 셀 사이에 중복 숫자를 가져옵니다.
=LET(x, TRANSPOSE(TEXTSPLIT(TEXTJOIN(", ",TRUE,A2:B2), ", ")),y,UNIQUE(x),z,UNIQUE(x,,1), TEXTJOIN(", ",TRUE,IF(ISERROR(MATCH(y,z,0)),y, "")))
고유 값 반환
동일한 행에서 쉼표로 구분된 숫자가 있는 지정된 두 셀 사이의 고유한 숫자를 반환하려면 다음 수식이 도움이 될 수 있습니다.
1. 고유번호를 출력할 셀을 선택합니다. 이 경우 셀 E2를 선택한 후 아래 수식을 입력하고 엔터 버튼 열쇠. 수식 셀을 선택하고 드래그 자동 완성 핸들 아래로 다른 행의 셀 사이에 고유한 번호를 가져옵니다.
=TEXTJOIN(", ",TRUE,UNIQUE(TRANSPOSE(TEXTSPLIT(TEXTJOIN(", ",TRUE,A2:B2), ", ")),,1))
노트:
쉼표로 구분된 값이 있는 두 열을 비교하고 VBA를 사용하여 중복되거나 고유한 값을 반환합니다.
이 섹션에서 제공하는 사용자 정의 함수는 지정된 두 셀의 쉼표로 구분된 값을 비교하고 이들 사이의 중복 값 또는 고유 값을 반환하는 데 도움이 됩니다. 다음과 같이 하십시오.
위와 동일한 예를 들어 Column1의 쉼표로 구분된 숫자와 Column2의 동일한 행에 있는 쉼표로 구분된 숫자를 비교하고 중복되거나 고유한 값을 반환하려면 이 섹션의 사용자 정의 함수를 사용해 보십시오.
1. 시작 통합 문서에서 다른 + F11 키를 눌러 응용 프로그램 용 Microsoft Visual Basic 창.
2. 에서 응용 프로그램 용 Microsoft Visual Basic 창을 클릭합니다 끼워 넣다 > 모듈, 다음 VBA 코드를 모듈(코드) 창.
VBA 코드: 두 셀에서 쉼표로 구분된 값을 비교하고 중복/고유 값 반환
Private Function COMPARE(Rng1, Rng2 As Range, Op As Boolean)
'Updated by Extendoffice 20221019
Dim R1Arr As Variant
Dim R2Arr As Variant
Dim Ans1 As String
Dim Ans2 As String
Dim Separator As String
Dim d1 As New Dictionary
Dim d2 As New Dictionary
Dim d3 As New Dictionary
Application.Volatile
Separator = ", "
R1Arr = Split(Rng1.Value, Separator)
R2Arr = Split(Rng2.Value, Separator)
Ans1 = ""
Ans2 = ""
For Each ch In R2Arr
If Not d2.Exists(ch) Then
d2.Add ch, "1"
End If
Next
If Op Then
For Each ch In R1Arr
If d2.Exists(ch) Then
If Not d3.Exists(ch) Then
d3.Add ch, "1"
Ans1 = Ans1 & ch & Separator
End If
End If
Next
If Ans1 <> "" Then
Ans1 = Mid(Ans1, 1, Len(Ans1) - Len(Separator))
End If
COMPARE = Ans1
Else
For Each ch In R1Arr
If Not d1.Exists(ch) Then
d1.Add ch, "1"
End If
Next
For Each ch In R1Arr
If Not d2.Exists(ch) Then
If Not d3.Exists(ch) Then
d3.Add ch, "1"
Ans2 = Ans2 & ch & Separator
End If
End If
Next
For Each ch In R2Arr
If Not d1.Exists(ch) Then
If Not d3.Exists(ch) Then
d3.Add ch, "1"
Ans2 = Ans2 & ch & Separator
End If
End If
Next
If Ans2 <> "" Then
Ans2 = Mid(Ans2, 1, Len(Ans2) - Len(Separator))
End If
COMPARE = Ans2
End If
End Function
3. 코드를 붙여넣은 후 모듈(코드) 창, 클릭으로 이동 도구 > 참고자료 를 열려면 참조 – VBAProject 창, 확인 Microsoft 스크립팅 런타임 상자를 클릭 한 다음 OK 버튼을 클릭합니다.
4. 누르세요 다른 + Q 닫는 키 응용 프로그램 용 Microsoft Visual Basic 창.
5. 이제 두 개의 쉼표로 구분된 값 셀에서 중복 값과 고유 값을 반환하기 위해 두 함수를 개별적으로 적용해야 합니다.
중복 값 반환
중복 숫자를 출력할 셀을 선택합니다. 이 예에서는 D2 셀을 선택한 다음 아래 수식을 입력하고 엔터 버튼 셀 A2와 B2 사이의 중복 숫자를 가져오는 키입니다.
수식 셀을 선택하고 자동 채우기 핸들을 아래로 드래그하여 다른 행의 셀 사이에 중복 숫자를 가져옵니다.
=COMPARE(A2,B2,TRUE)
고유 값 반환
고유 번호를 출력할 셀을 선택합니다. 이 예에서는 셀 E2를 선택한 다음 아래 수식을 입력하고 엔터 버튼 셀 A2와 B2 사이의 고유 번호를 가져오는 키입니다.
수식 셀을 선택하고 자동 채우기 핸들을 아래로 끌어 다른 행의 셀 사이에 고유 번호를 가져옵니다.
=COMPARE(A2,B2,FALSE)
최고의 사무 생산성 도구
🤖 | Kutools AI 보좌관: 다음을 기반으로 데이터 분석을 혁신합니다. 지능형 실행 | 코드 생성 | 사용자 정의 수식 만들기 | 데이터 분석 및 차트 생성 | Kutools 기능 호출... |
인기 기능: 중복 항목 찾기, 강조 표시 또는 식별 | 빈 행 삭제 | 데이터 손실 없이 열이나 셀 결합 | 수식없이 반올림 ... | |
슈퍼 조회: 다중 기준 VLookup | 다중 값 VLookup | 여러 시트에 걸친 VLookup | 퍼지 조회 .... | |
고급 드롭다운 목록: 드롭다운 목록을 빠르게 생성 | 종속 드롭다운 목록 | 다중 선택 드롭 다운 목록 .... | |
열 관리자: 특정 개수의 열 추가 | 열 이동 | Toggle 숨겨진 열의 가시성 상태 | 범위 및 열 비교 ... | |
특색 지어진 특징: 그리드 포커스 | 디자인보기 | 큰 수식 바 | 통합 문서 및 시트 관리자 | 리소스 라이브러리 (자동 텍스트) | 날짜 선택기 | 워크 시트 결합 | 셀 암호화/해독 | 목록으로 이메일 보내기 | 슈퍼 필터 | 특수 필터 (굵게/기울임꼴/취소선 필터링...) ... | |
상위 15개 도구 세트: 12 본문 도구 (텍스트 추가, 문자 제거,...) | 50+ 거래차트 유형 (Gantt 차트,...) | 40+ 실용 방식 (생일을 기준으로 나이 계산,...) | 19 삽입 도구 (QR 코드 삽입, 경로에서 그림 삽입,...) | 12 매출 상승 도구 (숫자를 단어로, 환율,...) | 7 병합 및 분할 도구 (고급 결합 행, 셀 분할,...) | ... 그리고 더 |
Excel용 Kutools로 Excel 기술을 강화하고 이전과는 전혀 다른 효율성을 경험해 보세요. Excel용 Kutools는 생산성을 높이고 시간을 절약하기 위해 300개 이상의 고급 기능을 제공합니다. 가장 필요한 기능을 얻으려면 여기를 클릭하십시오...
Office Tab은 Office에 탭 인터페이스를 제공하여 작업을 훨씬 쉽게 만듭니다.
- Word, Excel, PowerPoint에서 탭 편집 및 읽기 사용, Publisher, Access, Visio 및 Project.
- 새 창이 아닌 동일한 창의 새 탭에서 여러 문서를 열고 만듭니다.
- 생산성을 50% 높이고 매일 수백 번의 마우스 클릭을 줄입니다!