목차▾
엑셀 CONCATENATE 함수란?
엑셀 CONCATENATE 함수는 여러 텍스트를 순서대로 연결하는 함수입니다. 성 + 이름, 시 + 구 + 동 주소, 이메일 자동 생성, URL 조합 등 여러 셀의 값을 한 셀로 묶을 때 사용해요. 단, Microsoft는 2016년부터 공식적으로 CONCAT(2019+) 사용을 권장하고 있어 CONCATENATE는 레거시로 분류됩니다.
구문은 =CONCATENATE(텍스트1, 텍스트2, ...) 형식, 최대 255개 인수. 실무에서는 같은 기능을 더 간단히 하는 & 연산자 (=A1&" "&B1)나 범위 처리가 가능한 CONCAT·TEXTJOIN(2019+)을 더 많이 씁니다.
결합 방법 4가지 비교
엑셀에서 텍스트를 합치는 방법은 4가지. 상황에 맞게 골라야 합니다.
| 방법 | 구문 | 버전 | 특징 |
|---|---|---|---|
| & 연산자 | =A1&B1&C1 | 모든 버전 | 가장 단순 |
| CONCATENATE | =CONCATENATE(A1, B1, C1) | 2003+ | 단일 셀, 호환성 함수 |
| CONCAT | =CONCAT(A1:C1) | 2019+ | 범위 지원 |
| TEXTJOIN | =TEXTJOIN(",", TRUE, A1:C1) | 2019+ | 구분자 + 빈 값 무시 |
의사결정: 구분자 필요 → TEXTJOIN, 단순 범위 연결 → CONCAT, 단순 셀 연결 → &, 구버전 호환 → CONCATENATE.
CONCATENATE vs CONCAT — Microsoft 공식 권장
Microsoft 공식 문서에 명시: "이 함수는 새 버전에서 CONCAT 함수로 대체되었습니다. CONCATENATE 대신 CONCAT 함수를 사용하는 것이 좋습니다."
| 항목 | CONCATENATE | CONCAT |
|---|---|---|
| 범위 인수 | ✗ (단일 셀씩) | ✓ (A1:C1 가능) |
| 인수 개수 | 255개 | 254개 |
| 호환성 | Excel 2003+ | Excel 2019+ |
| 권장 여부 | ⚠️ 레거시 | Microsoft 공식 권장 |
구버전 호환이 필요 없다면 CONCAT 또는 TEXTJOIN으로 옮기는 게 미래 안전. 다른 사람과 공유한다면 호환성 위해 CONCATENATE 또는 & 유지.
실전 사용 시나리오 10가지
- 성 + 이름 —
=A1&" "&B1또는=CONCAT(A1, " ", B1) - 주소 조합 —
=CONCAT(시, " ", 구, " ", 동, " ", 번지) - 구분자 + 빈 값 무시 (TEXTJOIN) —
=TEXTJOIN(", ", TRUE, A1:E1) - 줄바꿈 결합 (CHAR(10)) —
=A1&CHAR(10)&B1— 셀 서식 "텍스트 줄 바꿈" 켜야 보임 - 숫자 서식 유지 (TEXT 조합) —
=A1&" "&TEXT(B1, "#,##0원") - 날짜 형식 —
="오늘은 "&TEXT(TODAY(), "yyyy년 m월 d일") - 이메일 자동 생성 —
=LOWER(A1)&"@company.com" - URL 조합 —
="https://example.com/products/"&상품ID - CSV 한 줄 —
=TEXTJOIN(",", FALSE, A1:Z1)— FALSE=빈 셀도 포함 - 다중 조건 보조 키 —
=A1&"-"&B1— VLOOKUP 다중 키
숫자·날짜 서식 유지 — TEXT 조합
&나 CONCATENATE는 셀 서식을 무시하고 내부 값을 그대로 연결합니다. 날짜 시리얼 번호(46194)나 천 단위 구분 없는 숫자(100000)가 그대로 나와요. TEXT 함수로 감싸 형식을 명시해야 합니다.
=A1&" "&TEXT(B1, "#,##0원") → "김철수 100,000원"
=TEXT(TODAY(), "yyyy-mm-dd") → "2026-06-25"
="매출 "&TEXT(C1, "0.0%") → "매출 12.5%"
자주 쓰는 TEXT 서식 코드: "#,##0" (천 단위), "0.00%" (퍼센트), "yyyy-mm-dd" (날짜), "hh:mm" (시간).
자주 발생하는 오류·함정 6가지
- 숫자 서식 사라짐 — 날짜·통화가 시리얼 번호로. 해결: TEXT 함수 감싸기
- 빈 셀 처리 — CONCATENATE는 빈 셀도 자리 차지 → 연속 구분자. 해결: TEXTJOIN ignore_empty=TRUE
- 공백 빠뜨림 —
=A1&B1결과 "성이름". 공백 원하면=A1&" "&B1 - 결과가 너무 길어짐 — 셀 최대 32,767자
- CONCAT 인수 순서 — 혼합 가능 (
=CONCAT(A1:C1, E1)), 순서가 결과에 그대로 반영 - TEXTJOIN의 빈 셀 vs 0 — ignore_empty=TRUE는 진짜 빈 셀만 무시. 0은 "0"으로 포함
자주 묻는 질문
Q. CONCATENATE 함수 사용법은?
=CONCATENATE(텍스트1, 텍스트2, ...) 형식입니다. 예: =CONCATENATE(A1, " ", B1) → A1과 B1을 공백 한 칸으로 연결. Microsoft는 새 버전에서 CONCAT 사용을 권장합니다 (범위 지원).
Q. CONCATENATE와 CONCAT의 차이는?
CONCAT(Excel 2019+)은 범위를 인수로 받을 수 있음 (=CONCAT(A1:C1)). CONCATENATE는 단일 셀씩만 가능. Microsoft 공식 문서가 CONCATENATE 대신 CONCAT 사용을 권장합니다.
Q. & 연산자와 CONCATENATE 중 뭐가 좋나요?
&가 가장 단순하고 빠릅니다 (=A1&" "&B1). CONCATENATE는 함수 호출 오버헤드가 있고 인수마다 콤마 입력해야 해서 번거로움. 단순 연결은 &, 범위 처리는 CONCAT, 구분자 + 빈 값 무시는 TEXTJOIN.
Q. 숫자나 날짜를 연결하면 형식이 깨져요.
& 또는 CONCATENATE는 셀 서식을 무시하고 내부 값을 그대로 연결합니다. 날짜 시리얼 번호(46194)나 천 단위 구분 없는 숫자(100000)가 나옴. TEXT 함수로 감싸세요: =A1&" "&TEXT(B1, "#,##0원") 또는 =TEXT(TODAY(), "yyyy-mm-dd").
Q. 셀 안에서 줄바꿈을 넣으려면?
=A1&CHAR(10)&B1 형식으로 CHAR(10) (LF)을 넣고, 셀 서식 → 정렬 → "텍스트 줄 바꿈" 옵션을 켜야 화면에 줄바꿈으로 보입니다. Mac은 CHAR(13)도 됨.
Q. 빈 셀을 자동으로 건너뛰며 콤마로 연결하려면?
TEXTJOIN을 쓰세요: =TEXTJOIN(", ", TRUE, A1:E1). 두 번째 인수 TRUE가 빈 셀 무시. CONCATENATE나 &로 하면 빈 셀 자리에 빈 문자열이 들어가 ", , 사과, , 바나나" 같은 결과가 나옵니다.
Q. CONCATENATE에 인수를 몇 개까지 넣을 수 있나요?
최대 255개. 결과 텍스트는 최대 32,767자. 큰 데이터를 연결할 때는 결과 길이를 확인하세요.
Q. 구글 스프레드시트에서도 동일하게 작동하나요?
네. &, CONCATENATE, CONCAT, TEXTJOIN 모두 Google Sheets, LibreOffice Calc, Apple Numbers, 한컴 한셀, WPS에서 동일한 문법으로 작동합니다.
본 페이지는 Microsoft Support 공식 CONCATENATE·CONCAT·TEXTJOIN·TEXT 문서를 기준으로 작성되었습니다. 정확한 동작은 Excel 버전·환경에 따라 달라질 수 있으니 중요한 작업 전에는 실제 환경에서 확인하세요.