엑셀 특정 조건 만족하는 텍스트 합치기 공식 사용법 및 동작원리

특정 조건을 만족하는 경우의 텍스트를 병합하는 공식의 사용법 및 동작원리를 알아봅니다.

홈페이지 » 엑셀 특정 조건 만족하는 텍스트 합치기 :: 함수 공식

특정 조건 만족하는 텍스트 합치기 공식

특정 조건 만족하는 텍스트 합치기 목차 바로가기
함수 공식
=TEXTJOIN(구분자,TRUE,IF(조건범위=조건,텍스트범위,""))
인수 설명
특정 조건을 만족하는 텍스트 합치기
특정 조건을 만족하는 텍스트 합치기 공식에 사용된 인수
인수설명
구분자텍스트를 병합할 구분자입니다. (예: "," 또는 공백 등..)
조건범위텍스트를 합치기 위해 평가할 조건 범위입니다.
조건평가할 조건입니다.
텍스트범위조건을 만족할 경우에 병합 될 텍스트가 입력된 범위입니다.

예제파일 다운로드

호환성
운영체제호환성
Windows 버전엑셀 2019 이후 또는 Microsoft 365 버전에서 사용 가능합니다.
Mac 버전Mac 용 엑셀 2019 이후 또는 Microsoft 365 버전에서 사용 가능합니다.
사용된 기초 함수
여러 문자열을 구분기호로 나눠 하나의 문장으로 결합합니다.
입력한 조건의 참/거짓을 판단하여 값을 반환합니다.

특정 조건 만족하는 텍스트 병합 공식 알아보기

공식 설명

특정 조건을 만족할 경우에 지정한 범위의 텍스트를 합치는 공식입니다. 본 공식은 TEXTJOIN 함수가 사용되므로 엑셀 2019 이후 버전 또는 Microsoft 365 사용자만 사용가능합니다. 엑셀 2016 이전 버전 사용자는 TEXTJOIN 추가기능을 설치하거나 사용자지정함수를 직접 지정하여 사용할 수 있습니다.

IF 함수의 논리식을 변경하여 여러개의 조건을 만족하는 텍스트를 합치는 공식으로도 손쉽게 응용할 수 있습니다.

공식의 동작원리
  1. IF 함수로 특정 조건을 만족하는 경우의 텍스트를 배열로 반환합니다.
    =IF({과일,야채,음료,과일,과일,야채,야채,음료}="과일",{사과,배추,물,포도,딸기,상추,피망,콜라},"")
    ={사과,,,포도,딸기,,,}
  2. TEXTJOIN 함수를 사용하여 배열 내 빈칸을 제외한 값을 구분자로 병합합니다.
    =TEXTJOIN("+",TRUE,{사과,,,포도,딸기,,,})
    ="사과+포도+딸기"   '구분자(+)로 구분하여 텍스트를 병합합니다.

자주묻는질문

자주묻는질문1. 여러개의 조건을 만족하는 경우는 어떻게 구하나요?

IF 함수의 논리식을 변경하면 다양한 조건을 만족하는 경우의 텍스트를 합칠 수도 있습니다. 조건의 곱셈은 AND 조건으로, 조건의 덧셈은 OR 조건으로 계산됩니다.

  1. 모든 조건을 만족하는 경우 (AND 조건)
    =TEXTJOIN(구분자,TRUE,IF((조건범위1=조건1)*(조건범위2=조건2),텍스트범위,""))
    '첫번째 조건과 두번째 조건을 모두 만족하는 경우의 텍스트를 합칩니다.
    예) =TEXTJOIN(구분자,TRUE,IF((항목범위="과일")*(제품범위="사과"),텍스트범위,""))
    '항목범위의 값이 '과일'이고, 제품범위의 값이 '사과'인 경우의 텍스트를 합칩니다.
  2. 둘 중에 하나라도 만족하는 경우 (OR 조건)
    =TEXTJOIN(구분자,TRUE,IF((조건범위1=조건1)+(조건범위2=조건2),텍스트범위,""))
    '첫번째 조건을 만족하거나 두번째 조건을 만족하는 경우의 텍스트를 합칩니다.
    예) =TEXTJOIN(구분자,TRUE,IF((항목범위="과일")+(항목범위="야채"),텍스트범위,""))
    '항목범위의 과일이거나 야채일경우의 텍스트를 모두 합칩니다.

관련링크 : MS 홈페이지 TEXTJOIN 함수 사용법

5 1 vote
게시글평점
현재 페이지 댓글알림 신청
알림 설정
guest
4 Comments
Inline Feedbacks
View all comments
정도영
정도영
2020년 8월 4일 7:43 오전
게시글평점 :
     

좋은 정보 감사합니다.
=IF({과일,야채,음료,과일,과일,야채,야채,음료}="과일","",{사과,배추,물,포도,딸기,상추,피망,콜라}) 에서 true 값이랑 false값이 바뀐거 같은데 확인 부탁드립니다 🙂

악순환의 굴레
악순환의 굴레
2020년 9월 21일 9:41 오후
게시글평점 :
     

=TEXTJOIN(구분자,TRUE,IF(조건범위=조건,텍스트범위,"")) 사이트 설명에는 이렇게 나와 있는데요. 이렇게 하니 원하는 결과가 안 나와요. 그래서 예제파일을 자세히 들여다 보니 배열 수식으로 돼 있는데 {=TEXTJOIN(",",TRUE,IF(B8:B18=E8,C8:C18,""))} 원래 배열수식으로 지정해줘야는 게 맞는 건가요? 참고로 엑셀… 더보기 »

Last edited 28 일 전 by 악순환의 굴레
iviolin****
iviolin****
2020년 9월 24일 8:22 오전

네 배열함수로 만들어 주셔야합니다.
그렇지 않을경우 엑셀이 B8:B18=E8이 아니 B8=E8로 인식을 해서 원하는 값이 나오지 않습니다.

4
0
여러분의 생각을 댓글로 남겨주세요.x