엑셀 셀 합치기 — &·CONCAT·TEXTJOIN 완벽 비교

최종 업데이트 2026-07-20

성과 이름, 시/도와 상세주소처럼 나뉜 값을 하나의 셀로 합치는 작업은 실무에서 매우 잦습니다. 방법은 여러 가지지만 상황에 따라 결과가 미묘하게 달라지므로, 표로 먼저 차이를 비교하고 실제 데이터로 확인해 보겠습니다.

네 가지 방법 비교

방법구분자 지정여러 셀 한 번에지원 버전
& 연산자직접 텍스트로 삽입불가(하나씩 나열해야 함)모든 버전
CONCATENATE직접 텍스트로 삽입불가모든 버전(최신 버전은 CONCAT 권장)
CONCAT불가가능(범위 지정)엑셀 2019 이상, 365
TEXTJOIN가능(구분자 지정)가능(범위 지정), 빈 칸 무시 옵션 있음엑셀 2019 이상, 365

예시 데이터로 확인하기

A(성)B(이름)C(시/도)D(상세주소)
민수서울특별시강남구 테헤란로 123
서연경기도 성남시 분당구
지훈부산광역시해운대구 센텀중앙로 45

성과 이름을 공백 없이 붙이려면 & 를 씁니다.

=A2 & B2

결과는 "김민수", "이서연", "박지훈"이 됩니다. 주소처럼 시/도와 상세주소 사이에 공백을 넣고 싶다면 큰따옴표 안에 띄어쓰기를 직접 넣어 연결합니다.

=C2 & " " & D2

TEXTJOIN — 구분자와 빈 칸 무시를 한 번에

위 표의 이서연 행처럼 시/도(C열)가 비어 있는 경우, & 로 이어 붙이면 앞에 불필요한 공백이 하나 남는 문제가 생깁니다. TEXTJOIN은 이런 빈 칸을 건너뛰는 옵션을 기본으로 제공합니다.

=TEXTJOIN(" ", TRUE, C2:D2)

TEXTJOIN의 두 번째 인수 TRUE가 '빈 칸은 무시하고 결합'을 뜻합니다. FALSE로 바꾸면 빈 칸도 구분자를 포함해 그대로 합쳐지므로, 이서연 행에서 시/도가 비었을 때 공백이 두 번 들어가는 문제가 다시 생깁니다.

⚠️

TEXTJOIN·CONCAT은 엑셀 2019 이상, Microsoft 365, 최신 구글시트에서만 지원됩니다. 회사 PC가 엑셀 2016 이하라면 이 함수 자체가 목록에 없어 #NAME? 오류가 납니다. 구버전 호환이 필요하면 & 연산자나 CONCATENATE로 대체해야 하며, 파일을 주고받는 상대방의 엑셀 버전도 함께 확인하는 것이 안전합니다.

여러 사람 이름을 한 줄에 쉼표로 나열하기

참석자 명단(A2:A10)을 '김민수, 이서연, 박지훈'처럼 쉼표로 구분해 한 셀에 모으고 싶을 때 TEXTJOIN이 가장 강력합니다. & 를 쓰면 10명이면 &를 9번 이어 써야 하지만, TEXTJOIN은 범위 하나로 끝납니다.

=TEXTJOIN(", ", TRUE, A2:A10)

줄바꿈으로 합쳐서 여러 줄처럼 보이게 하기

주소를 여러 줄로 나눠 보이게 하려면 구분자 자리에 줄바꿈 문자(CHAR(10))를 넣습니다.

=TEXTJOIN(CHAR(10), TRUE, C2:D2)
⚠️

CHAR(10)으로 줄바꿈을 넣어도 셀에 '자동 줄 바꿈'([홈] → [맞춤] → [자동 줄 바꿈])이 켜져 있지 않으면 화면에는 여전히 한 줄로 붙어 보입니다. 반드시 셀 서식에서 자동 줄 바꿈을 함께 켜야 의도한 대로 여러 줄로 표시됩니다.

CONCATENATE는 왜 요즘 잘 안 쓰나

CONCATENATE는 & 와 동일하게 동작하지만 최신 엑셀에서는 '이전 버전과의 호환성을 위해 제공'되는 함수로 분류되어, 새 함수 목록에는 CONCAT으로 대체하라는 안내가 뜹니다. 기능 차이는 거의 없지만, 새로 문서를 만든다면 CONCAT이나 TEXTJOIN을 우선 쓰는 것을 권장합니다.

조건에 맞는 값만 골라서 합치기

'부서가 영업인 사람 이름만 쉼표로 합치기'처럼 조건까지 걸어야 한다면 TEXTJOIN에 IF를 배열로 함께 씁니다. B열이 부서, A열이 이름이라면 다음과 같이 작성합니다.

=TEXTJOIN(", ", TRUE, IF(B2:B10="영업", A2:A10, ""))

IF(B2:B10="영업", A2:A10, "")가 부서별로 이름 또는 빈 문자열을 배열로 만들고, TEXTJOIN이 그중 빈 문자열은 무시(TRUE 옵션)한 채 조건에 맞는 이름만 이어 붙입니다. 최신 엑셀(365)에서는 Enter만 눌러도 정상 동작하지만, 구버전 엑셀에서는 수식을 입력한 뒤 Enter 대신 Ctrl+Shift+Enter를 눌러야 배열 수식으로 인식되어 정상 계산됩니다.

⚠️

구버전 엑셀에서 Ctrl+Shift+Enter 없이 그냥 Enter만 누르면 배열 계산이 되지 않아 첫 번째 값만 반영되거나 결과가 이상하게 나옵니다. 수식 입력줄에서 수식이 중괄호 {} 로 감싸져 보이면 배열 수식으로 정상 등록된 것입니다.

숫자와 텍스트를 섞어 합칠 때

'김민수 사원 (급여 3,200,000원)'처럼 텍스트와 숫자를 함께 합치려면 숫자 부분을 TEXT 함수로 원하는 서식의 문자열로 먼저 바꿔야 합니다. 그냥 &로 숫자를 이어 붙이면 천단위 구분 쉼표나 '원' 단위가 사라지고 원래 숫자 그대로 붙습니다.

=A2 & " 사원 (급여 " & TEXT(B2, "#,##0") & "원)"

TEXT(B2, "#,##0")은 B2 값을 천 단위 쉼표가 포함된 문자열로 바꿔줍니다. 날짜를 문자열에 섞을 때도 마찬가지로 TEXT(날짜셀, "yyyy-mm-dd") 형태로 감싸야 원하는 형식 그대로 텍스트에 들어갑니다.

💡

구분자가 두세 칸 정도로 적으면 & 가 가장 빠르고, 구분자를 통일해서 여러 셀을 한 번에 합칠 때는 TEXTJOIN이 압도적으로 편합니다. 반대로 합친 텍스트를 다시 나누려면 텍스트 나누기 메뉴나 TEXTSPLIT 함수를 쓰면 됩니다.

조건까지 포함한 셀 합치기 수식 AI로 만들기 →

함께 보면 좋은 글