
엑셀에서 데이터 작업을 할 때 중복된 값들을 제거하면서 텍스트를 결합해야 하는 상황이 자주 발생합니다. 특히 여러 열의 데이터를 하나로 합치거나 조건별로 그룹화할 때 중복 없는 깔끔한 결과물을 원하는 경우가 많습니다. TEXTJOIN 함수는 이러한 작업을 효율적으로 처리할 수 있는 강력한 도구로, 적절한 활용법을 익히면 업무 효율성을 크게 향상시킬 수 있습니다.
TEXTJOIN 함수 기본 문법과 중복 제거 원리
TEXTJOIN 함수는 엑셀 2016 이후 버전에서 사용할 수 있는 텍스트 결합 함수로, 기존의 CONCATENATE 함수보다 훨씬 유연하고 강력한 기능을 제공합니다. 이 함수의 기본 문법은 TEXTJOIN(구분자, 빈값무시, 텍스트1, 텍스트2, …)의 형태를 가지며, 첫 번째 매개변수는 텍스트들 사이에 삽입할 구분자를, 두 번째 매개변수는 빈 값을 무시할지 여부를 지정합니다. 중복 제거를 위해서는 IF, MATCH 함수와 조합하여 사용하며, 이를 통해 동일한 값이 반복되는 것을 방지할 수 있습니다. 마이크로소프트 공식 TEXTJOIN 함수 가이드에 따르면, 이 함수는 최대 252개의 텍스트 인수를 처리할 수 있어 대용량 데이터 처리에도 적합합니다.
수식을 활용한 단일 열 중복 제거 방법
가장 기본적인 중복 제거 방법은 TEXTJOIN, IF, MATCH 함수를 조합하여 사용하는 것입니다. =TEXTJOIN(“, “, TRUE, IF(MATCH(A2:A12, A2:A12, 0)=MATCH(ROW(A2:A12), ROW(A2:A12)), A2:A12, “”))와 같은 수식을 사용하면, A2부터 A12까지의 범위에서 중복된 값들을 제거하면서 텍스트를 결합할 수 있습니다. 이 수식에서 MATCH 함수는 각 값의 첫 번째 위치를 찾아 반환하고, ROW 함수는 현재 행 번호를 반환하여 두 값이 일치할 때만 해당 텍스트를 결합합니다. 수식 입력 후 Ctrl+Shift+Enter를 눌러 배열 수식으로 입력해야 하며, 엑셀 365나 2019 이후 버전에서는 자동으로 배열 수식으로 처리됩니다.
조건부 중복 제거를 위한 고급 수식 기법
특정 조건에 따라 텍스트를 그룹화하면서 중복을 제거해야 하는 경우에는 더 복잡한 수식이 필요합니다. 예를 들어, 부서별로 직원 이름을 중복 없이 결합하려면 SUMPRODUCT, SMALL, COLUMN 함수 등을 추가로 활용해야 합니다.
- SUMPRODUCT를 이용한 조건별 카운팅으로 중복 여부를 판단하는 방법
- SMALL 함수와 ROW 함수 조합으로 고유한 값의 순서를 정렬하는 기법
- IFERROR 함수를 추가하여 오류 상황을 방지하는 안전장치 구현
- 여러 조건을 동시에 만족하는 값들만 선택적으로 결합하는 고급 기법
VBA 매크로를 활용한 대용량 데이터 처리
대량의 데이터를 처리하거나 반복적인 작업이 필요한 경우에는 VBA 매크로를 활용하는 것이 효과적입니다. Dictionary 객체를 사용하여 중복을 체크하고, Split 함수로 기존 데이터를 분석하여 중복 여부를 판단하는 방식으로 구현할 수 있습니다.
| 처리 방식 | 적합한 데이터 규모 | 장점 | 단점 |
|---|---|---|---|
| 수식 기반 | 수백 개 이하 | 간단하고 직관적 | 대용량 처리 한계 |
| VBA 매크로 | 수천 개 이상 | 빠른 처리 속도 | 코딩 지식 필요 |
| 파워쿼리 | 수만 개 이상 | 자동화 가능 | 초기 설정 복잡 |
| 외부 도구 | 제한 없음 | 고급 기능 제공 | 별도 구매 필요 |
파워쿼리를 이용한 자동화된 중복 제거 시스템
엑셀의 파워쿼리(Power Query) 기능을 활용하면 GUI 환경에서 쉽게 중복 제거 작업을 자동화할 수 있습니다. 데이터 탭의 데이터 가져오기 메뉴에서 시작하여, 변환 단계에서 그룹화와 텍스트 결합 옵션을 설정하면 됩니다. 마이크로소프트 파워쿼리 문서에서 제공하는 가이드를 참조하면, 복잡한 데이터 변환 작업도 단계별로 설정할 수 있습니다.
파워쿼리의 장점은 한 번 설정해두면 데이터가 업데이트될 때마다 자동으로 중복 제거와 텍스트 결합이 실행된다는 점입니다. 특히 외부 데이터 소스와 연결된 경우 실시간으로 데이터를 갱신하면서 중복 제거 작업을 수행할 수 있어 매우 효율적입니다.
실무에서 자주 사용되는 TEXTJOIN 중복제거 패턴
실제 업무 환경에서는 몇 가지 패턴의 중복 제거 작업이 자주 발생합니다. 첫째, 고객별 구매 상품 목록을 중복 없이 정리하는 경우가 있습니다. 이때는 고객 ID를 기준으로 그룹화하고 상품명을 TEXTJOIN으로 결합하되, 동일 상품의 중복 구매는 한 번만 표시하도록 처리합니다. 엑셀 텍스트 함수 활용 가이드를 참고하면 다양한 응용 방법을 확인할 수 있습니다.
둘째, 프로젝트별 참여자 목록 정리나 부서별 업무 분장 현황 등을 정리할 때도 유사한 방식을 적용할 수 있습니다. 이러한 작업에서는 단순히 텍스트를 결합하는 것뿐만 아니라 결합 순서나 구분자 설정도 중요한 고려사항이 됩니다. 알파벳순 정렬이나 입력순 유지 등의 옵션을 적절히 활용해야 합니다.
오류 해결과 성능 최적화 팁
TEXTJOIN 함수를 사용한 중복 제거 작업에서 자주 발생하는 오류들과 해결 방법을 알아보겠습니다. 첫째, #VALUE! 오류는 주로 배열 수식이 제대로 입력되지 않았을 때 발생하므로, Ctrl+Shift+Enter 키 조합을 정확히 사용해야 합니다. 둘째, 결과가 빈 값으로 나타나는 경우는 범위 설정이나 조건식에 문제가 있을 가능성이 높으므로 단계별로 검증해야 합니다. 엑셀젯 TEXTJOIN 함수 상세 가이드에서 다양한 오류 상황과 해결책을 확인할 수 있습니다.
성능 최적화를 위해서는 처리하는 데이터 범위를 최소화하고, 불필요한 계산을 줄이는 것이 중요합니다. 특히 대용량 데이터를 다룰 때는 배열 수식 대신 헬퍼 컬럼을 활용하거나, 계산 모드를 수동으로 변경하여 필요할 때만 재계산하도록 설정하는 것이 효과적입니다. 또한 조건부 서식이나 데이터 검증 기능과 연동하여 데이터 품질을 실시간으로 모니터링하는 시스템을 구축하는 것도 좋은 방법입니다.



