본문 바로가기
Excel 함수

엑셀 여러 셀의 문자 텍스트를 하나로 합쳐주는 CONCAT 함수, TEXTJOIN 함수 사용 방법과 차이점 알아보기!

by ko-link 2023. 12. 20.

엑셀을 사용하다보면 여러 데이터를 합쳐야 할 때가 종종 있다.

어떤 데이터는 여기서 가져오고, 또 어떤 데이터는 저기서 가져오고..

그러다보면 일관성 있게 형식을 맞춰야 할 수도 있고,

어쩔 때는 두 컬럼으로 나눠져있는 데이터들을 하나로 합쳐줘야 할 필요도 있다.

여러 셀의 문자나 텍스트를 하나로 합쳐주는 CONCAT 함수, TEXTJOIN 함수가 있다.

두 함수는 어떻게 사용하는지, 차이는 무엇인지, 어떻게 활용하면 좋을지에 대해 알아보자!

 

엑셀 CONCAT 함수

CONCAT 함수는 지정한 문자열을 모두 결합해서 반환해주는 함수이다.

 

=CONCAT(결합할 범위 또는 결합할 단일 텍스트를 열거)
=CONCAT(text1)

 

  • text1 : 1~254 사이의 텍스트 문자열 또는 단일 텍스트 문자열에 연결할 범위를 입력한다.  

 

각각의 단일 텍스트를 열거하여 합치는 방법도 있지만 실무에서는 그렇게 활용하는 경우는 없을 것이다.

결합할 범위를 지정하여 여러 셀의 각 값들을 하나로 합치는 용도로 많이 활용할 것이다.

 

예제를 통해 쉽게 알아보자!

엑셀 concat 함수 예제
엑셀 CONCAT 함수 예제

 

B 컬럼의 주소와 C 컬럼의 세부주소를 합쳐서 하나의 주소로 만들어주고 싶다.

그럼 CONCAT 함수로 두 셀의 범위를 지정해주면 바로 결합이 된다.

 

=CONCAT(B3:C3)

 

다만 CONCAT 함수는 합칠 때 합치는 문자, 텍스트 간에 띄어쓰기나 중간에 삽입할 문자 같은걸 따로 넣을 수는 없다.

그래서 "서울시" 라는 B3 셀과 "성동구 옥수동" 이라는 C3 셀을 합치면 결과와 같이,

"서울시성동구 옥수동" 이라는 결과가 반환된다.

만약 서울시와 성동구 사이에 띄어쓰기를 하고 싶다면, C3 셀의 맨 앞을 한 칸 띄우던지, B3 셀의 맨 뒤를 한 칸 띄워 공백을 따로 만들어주어야 한다.

 

활용도가 떨어진다고 했던 단일 텍스트를 열거하여 결합하려면 아래와 같이 입력하면 된다.

 

=CONCAT("서울시", "성동구 옥수동") 

 

마찬가지로 이렇게 작성하면 "서울시성동구 옥수동" 이렇게 결과가 나올테니,

서울시와 성동구 사이를 띄우고 싶다면 아래와 같이 입력해야 한다.

 

=CONCAT("서울시", " 성동구 옥수동") 

 

엑셀 TEXTJOIN 함수

여러 셀을 합쳐주는 CONCAT 함수는 알겠는데 합칠 때 띄어쓰기 같은걸 넣을 수 없으니 너무 불편하다.

이럴 때 활용할 수 있는 함수가 바로 TEXTJOIN 함수이다.

 

 =TEXTJOIN(각 텍스트 사이에 넣을 문자, 빈 셀 처리기준, 결합할 범위 또는 결합할 단일 텍스트 열거)
=TEXTJOIN(delimiter, ignore_empty, text1)

 

  • 각 텍스트 사이에 넣을 문자 : 결합할 범위 또는 결합할 단일 텍스트 열거 사이에 어떤 값을 넣을지
  • 빈 셀 처리기준 : TRUE(기본값)면 빈 셀은 무시, FALSE면 빈 셀도 포함
  • text1 : 1~254 사이의 텍스트 문자열 또는 단일 텍스트 문자열에 연결할 범위를 입력한다.  

 

TEXTJOIN 함수는 결합할 문자, 텍스트 사이에 추가로 문자를 넣을 수 있다.

띄어쓰기를 하고 싶다면 " " 이런식으로 공백을 하나 두면 된다.

 

예제를 통해 쉽게 이해해보자!

엑셀 textjoin 함수 예제
엑셀 TEXTJOIN 함수 예제

 

역시 마찬가지로 B 컬럼의 주소와 C 컬럼의 세부주소를 결합하여 합친 주소를 만들고 싶다.

TEXTJOIN 함수를 통해 결합할 문자 사이에 " " 공백을 넣음으로써 띄어쓰기까지 자동으로 만들어줄 수 있다.

 

=TEXTJOIN(" " 

 

그 다음엔 빈 셀을 어떻게 처리할 것인가를 선택하는 조건이다.

기본값인 TRUE의 경우는 빈 셀은 무시, 즉 결합 대상에 고려하지 않겠다는 것이다.

FALSE로 입력하면 빈 셀도 포함하기 때문에 띄어쓰기 처럼 공백이 하나 더 생긴다고 보면 된다.

 

=TEXTJOIN(" ", TRUE   

 

마지막으로는 CONCAT 함수와 같이 결합할 범위를 입력해주면 된다.

 

=TEXTJOIN(" ", TRUE, B3:C3)

 

그럼 자연스럽게 띄워쓰기가 된 채로 결합되어 결과값이 반환된다!

만약 단일 텍스트를 열거식으로 했다면 아래와 같이 작성하면 동일하게 나올 것이다.

 

=TEXTJOIN(" ", TRUE, "서울시", "성동구", "옥수동")

 

 

TRUE와 FALSE의 차이점에 대해서 조금 더 설명해보면,

아래 예제를 보면 이해가 더 쉬울 것이다.

엑셀 textjoin 함수 true와 false 차이점
엑셀 TEXTJOIN 함수 내 TRUE와 FALSE 차이점

 

결합할 문자 텍스트 셀 사이에 "합"이라는글자를 넣어보았다.

빈 셀로 보이기 위해 단일 텍스트에 아무것도 입력하지 않은 "" 쌍따옴표만 두 개 넣었다.

TRUE의 경우에는 첫 번째 결과값과 같이 "서울시합성동구" 이렇게 결과값이 나왔다. 

빈 셀은 무시하고 값이 있는 문자만 결합을 한 것이다.

 

반면, FALSE로 입력한경우에는두 번째 결과값과 같이 "서울시합합성동구" 라고 결과값이 나왔다.  

빈 셀도 결합 대상으로써 포함을 했다는 것이다.

그래서 합치는 문자 사이에 넣으려고 지정한 "합"이라는 문자가 두 번 연속으로 들어간것!

 

 

여러 문자, 텍스트를 하나의 셀에 합쳐주는 함수인 CONCAT 함수와 TEXTJOIN 함수에 대해 알아보았다.

결합할 문자 사이에 띄어쓰기나 새로운 문자 등 무언가를 첨가해야 할 때는 TEXTJOIN 함수를,

그렇지 않고 합치기만 하면 된다면 CONCAT 함수를 사용하면 되겠다.