셀에 목록의 텍스트가 포함된 경우 Excel에서 값을 반환하는 방법

  • 이 공유
Hugh West

텍스트 목록이 있고 목록을 기반으로 셀을 검색하고 값을 반환하려는 경우 Excel에서 간단한 방법을 제공하지 않기 때문에 수식을 작성해야 합니다. 이 문서에서는 이 문제를 해결하고 이 작업을 수행하는 5가지 다른 수식을 제공하여 상황에 맞는 완벽한 수식을 선택하고 셀에 목록의 특정 텍스트가 포함된 경우 값을 반환할 수 있도록 했습니다.

실습 워크북 다운로드

이 글에서 사용한 워크북은 아래 버튼에서 다운받아 직접 연습해볼 수 있습니다.

If Cell Contains Text from List.xlsx

이 기사에서 사용된 함수 소개

여기서 사용한 수식은 다음 함수를 사용합니다.

  • COUNTIFS 기능:

이 기능은 여러 기준과 일치하는 셀을 계산합니다. COUNTIFS 함수 의 문법은 다음과 같다.

=COUNTIFS (range1, criteria1, [range2], [criteria2], …)

  • range1 – 평가할 첫 번째 범위입니다.
  • criteria1 – 첫 번째 범위에서 사용할 기준입니다.
  • range2 [선택사항]: 두 번째 범위는 range1과 동일하게 작동합니다.
  • criteria2 [선택사항]: 사용할 기준 2 범위에서. 이 기능은 최대 127개의 범위 및 기준 쌍 을 허용합니다.
  • TEXTJOIN 기능:

이 기능 텍스트 조인구분 기호가 있는 값. TEXTJOIN 함수 의 문법은 다음과 같다.

=TEXTJOIN (delimiter, ignore_empty, text1, [text2], …)

  • delimiter: 함수가 결합할 텍스트 사이의 구분 기호입니다.
  • ignore_empty: 이 인수는 함수가 공백을 무시하는지 여부를 지정합니다. 셀 여부.
  • text1: 첫 번째 텍스트 값(또는 범위).
  • text2 [선택 사항]: 두 번째 텍스트 값(또는 범위) .
  • MATCH 함수:

이 함수는 배열에서 항목의 위치를 ​​가져옵니다. MATCH 함수 의 구문은 다음과 같습니다.

=MATCH (lookup_value, lookup_array, [match_type])

  • lookup_value: lookup_array 에서 일치시킬 값입니다.
  • lookup_array: 셀 범위 또는 배열 참조입니다.
  • match_type [선택 사항]: 1 = 정확히 또는 다음으로 작은 값, 0 = 정확히 일치하는 항목, -1 = 정확히 또는 다음으로 큰 값. 기본적으로 match_type=1입니다.
  • INDEX 함수:

이 함수는 위치를 기반으로 목록 또는 테이블에서 값을 가져옵니다. . INDEX 함수 의 문법은 다음과 같다.

=INDEX (array, row_num, [col_num], [area_num])

  • array: 셀 범위 또는 배열 상수.
  • row_num: 참조의 행 위치.
  • col_num [선택 사항] : 참조의 열 위치.
  • area_num [선택 사항]: 범위참조에서 사용해야 합니다.
  • IFERROR 기능:

이 기능은 오류를 포착하고 처리합니다. IFERROR 함수 의 구문은 다음과 같다.

=IFERROR(value, value_if_error)

  • value: 오류를 확인할 값, 참조 또는 수식입니다.
  • value_if_error: 오류가 발견된 경우 반환할 값입니다.
  • 검색 기능:

이 기능은 문자열에서 텍스트의 위치를 ​​가져옵니다. SEARCH 함수 의 문법은 다음과 같다.

=SEARCH (find_text, within_text, [start_num])

  • find_text : 이 인수는 찾을 텍스트를 지정합니다.
  • within_text: 텍스트를 찾을 위치를 지정합니다.
  • start_num [선택 사항]: 이를 통해 지정된 텍스트의 위치를 ​​계산할 텍스트 문자열의 위치를 ​​지정합니다. 선택 사항이며 기본값은 왼쪽부터 1입니다.

셀에 목록의 특정 텍스트가 포함된 경우 Excel에서 값을 반환하는 5가지 수식

제시를 시도합니다. 이 데이터 세트의 실제 예입니다. 일부 음료는 여기에 표시됩니다. 칩스 , 차가운 음료수 시리얼 은 이 데이터 세트에서 음료의 세 가지 카테고리입니다. 모든 제품 이라는 단일 열에서 음료의 이름과 범주가 함께 연결됩니다. Chips ColdDrinks List 열에도 있습니다. 목록 열을 기준으로 원하는 출력이 두 번째 열에 표시됩니다.

1. COUNTIF, IF & 셀에 목록의 텍스트가 포함된 경우 값을 반환하는 OR 함수

일치 후 전체 셀의 값을 반환하려는 경우 가장 유용한 수식입니다.

여기에서 List 열 기준과 일치하는 제품 의 셀 값을 가져와 해당 목록 열을 기반으로 제품에 표시했습니다.

수식은 다음과 같습니다.

=IF(OR(COUNTIF(B5,"*"&$E$5:$E$6&"*")),B5,"")

수식 분류:

  • =IF(OR(COUNTIF(B5,"*"&$E$5:$E$6&"*")),B5,"")

여기서 별표 기호 ( * )는 와일드카드 문자입니다. " Ruffles - Chips " 문자열인 셀 B5 내에서 " Chips " 및 "Cold Drinks" 하위 문자열을 검색했습니다.

  • =IF(OR(COUNTIF("Ruffles - Chips",*Chips*, *Cold Drinks*)), B5, "")

COUNTIF 함수는 모든 하위 문자열 일치에 대해 하나를 반환했습니다. " Chips " 셀 B5 에 있으므로 { 1:0 }을 반환합니다.

  • =IF(OR({1;0}), B5, "")

OR 함수는 인수 중 하나라도 TRUE 인 경우 TRUE 값을 반환합니다. 이 경우 일(1)= TRUE .

  • =IF(TRUE, "Ruffles - Chips", "")

IF 함수의 값은 TRUE 이며 원하는 출력인 첫 번째 인수를 반환합니다.

최종 출력 : Ruffles – Chips

참고:

여기서그러나 IF 함수 출력을 원하는 출력으로 변경하여 원하는 출력을 표시할 수 있습니다.

=IF(OR(COUNTIF(B5,"*"&$E$5:$E$6&"*")),TRUE,FALSE)

자세히 보기: 셀에 단어가 포함된 경우 Excel에서 값 지정(수식 4개)

2. SEARCH 함수와 IF-OR 조합을 사용하여 여러 조건이 있는 값 반환

여기에서 목록 과 일치하는 제품 의 셀 값을 가져왔습니다. 열 기준에 따라 제품에 해당 목록 열을 표시했습니다.

공식은 다음과 같습니다.

=IF(OR(ISNUMBER(SEARCH($E$5,B5)),ISNUMBER(SEARCH($E$6,B5))),B5,"")

수식 분류:

  • =IF(OR(ISNUMBER(SEARCH($E$5,B5)),ISNUMBER(SEARCH($E$6,B5))),B5,"")

SEARCH 기능은 셀 B5 에서 목록 열의 값을 검색했습니다. " Chips "의 경우 하위 문자열의 시작 위치인 11 를 반환했습니다. Cold Drinks 의 경우 오류를 반환했습니다.

  • =IF(OR(ISNUMBER(11),ISNUMBER(SEARCH(#VALUE))),B5,"")

ISNUMBER 함수가 변환되었습니다. 11 TRUE 값으로, 오류를 FALSE 값으로.

  • =IF(OR(TRUE,FALSE)),B5,"")

OR 함수는 인수 중 하나라도 TRUE 인 경우 TRUE 값을 반환합니다. TRUE 인수가 있으므로 이 경우에도 TRUE 값을 반환합니다.

  • =IF(TRUE, "Ruffles - Chips","")

IF 함수의 값이 TRUE 이므로 원하는 출력인 첫 번째 인수를 반환합니다.

최종 출력: Ruffles –Chips

참고:

  • 여기서는 일치하는 셀을 표시했지만 IF 원하는 출력으로 기능 출력.
=IF(OR(ISNUMBER(SEARCH($E$5,B5)),ISNUMBER(SEARCH($E$6,B5))),1,0)

  • 이 기능의 주요 이점 수식은 배열 수식은 아니지만 목록 의 모든 셀을 수동으로 입력해야 하므로 목록 에 셀이 많은 경우에는 권장하지 않습니다.
  • 대소문자를 구분하는 경우 SEARCH 함수 대신 FIND 함수 를 기반으로 아래 수식을 사용할 수 있습니다.
=IF(OR(ISNUMBER(FIND($E$5,B5)),ISNUMBER(FIND($E$6,B5))),B5,"")

자세히 보기: 셀에 텍스트가 포함된 경우 Excel에서 값 반환(8가지 쉬운 방법)

유사한 읽기:

  • 엑셀에서 셀에 특정 텍스트가 포함된 경우 합산하는 방법(6가지 방법)
  • 셀에 텍스트가 포함된 경우 VLOOKUP 사용 Excel
  • Excel 범위 & 셀 참조 반환(3가지 방법)

3. 셀에 목록의 텍스트가 있는 경우 TEXTJOIN 수식을 사용하여 다른 셀의 값 반환

이 수식은 일치하는 목록 의 문자열을 표시해야 할 때 유용합니다. .

여기서는 제품 과 일치하는 LIST 열에서 셀 값을 가져와 목록 <에서 일치하는 값에 표시했습니다. 4>열.

수식은 다음과 같습니다.

=TEXTJOIN(", ",TRUE,IF(COUNTIF(B5,"*"&$E$5:$E$6&"*"), $E$5:$E$6,""))

공식분석:

  • =TEXTJOIN(", ",TRUE,IF(COUNTIF(B5,"*"&$E$5:$E$6&"*"),$E$5:$E$6,""))

여기서 별표 기호 ( * ) 와일드카드 문자입니다. " Ruffles – Chips " 문자열인 셀 B5 내의 " Chips " 및 "Cold Drinks" 하위 문자열을 검색했습니다.

  • TEXTJOIN(", ",TRUE,IF(COUNTIF("Ruffles - Chips",*Chips*, *Cold Drinks*),$E$5:$E$6,""))

COUNTIF 함수는 일치하는 모든 하위 문자열에 대해 하나를 반환했습니다. “ Chips ”가 Cell B5 에 있으므로 { 1:0 }을 반환합니다.

  • TEXTJOIN(", ",TRUE,IF({1;0},$E$5:$E$6,""))

IF 함수는 인수의 첫 번째 값만 1 = True<4이므로 " Chips " 값만 반환했습니다>.

  • TEXTJOIN(", ",TRUE,{"Chips";""})

TEXTJOIN 함수는 목록 이(가) 일치했습니다. 일치하는 값이 많으면 구분 기호로 사이에 쉼표(,)를 사용하여 모두 반환했을 것입니다.

최종 출력: Chips

자세히 보기: 셀에 텍스트가 포함된 경우 Excel의 다른 셀에 텍스트 추가

4. 셀에 특정 텍스트가 포함된 경우 INDEX MATCH 수식을 사용하여 값 반환

TEXTJOIN 수식의 대안입니다. 이 수식은 또한 List 에서 일치하는 문자열을 보여줍니다.

여기서 LIST 열에서 <3과 일치하는 셀 값을 가져왔습니다>제품 그리고 목록 열의 일치 값으로 표시했습니다.

공식은 다음과 같습니다.

=IFERROR(INDEX($E$5:$E$6, MATCH(1, COUNTIF(B5, "*"&$E$5:$E$6&"*"), 0)),"")

수식 분류:

  • =IFERROR(INDEX($E$5:$E$6,MATCH(1,COUNTIF(B5,"*"&$E$5:$E$6&"*"),0)),"")

여기서 별표 ( * )는 와일드카드 문자. " Ruffles – Chips " 문자열인 Cell B5 내에서 " Chips " 및 " Cold Drinks " 하위 문자열을 검색했습니다.

  • IFERROR(INDEX($E$5:$E$6,MATCH(1,COUNTIF("Ruffles - Chips",*Chips*,*Cold Drinks*),0)),"")

COUNTIF 함수는 모든 하위 문자열 일치에 대해 하나를 반환했습니다. " Chips "가 Cell B5 에 있으므로 { 1:0 }을 반환합니다.

  • IFERROR(INDEX($E$5:$E$6,MATCH(1,{1;0}),0)),"")

MATCH 함수는 일치하는 " Chips " 값이 하나뿐이므로 1을 반환했습니다.

  • IFERROR(INDEX($E$5:$E$6,1),"")

INDEX 함수는 List 배열의 값인 " Chips "를 반환했습니다.

  • IFERROR("Chips","")

여기서 IFERROR 함수는 일치하는 항목이 없을 때 발생하는 오류를 처리하는 데 사용됩니다. .

최종 출력: Chips

참고:

여기서 일치하는 셀을 표시했지만 원하는 출력으로 IF 함수 출력을 변경하여 원하는 대로 출력합니다.

자세히 보기: 셀에 텍스트가 포함된 경우 Excel 수식 다음 값 반환 다른 셀

5. IF 및 TEXTJOIN

을 사용하여 EXACT 함수 적용 이것은 다양한 상황에서 이 문제에 대한 또 다른 솔루션입니다. 여기에서는 단일 구성원이 있는 목록 열에서 셀 값을 가져왔습니다. 이 값을 제품과 일치시키고 모든 일치 값을 단일 셀에 표시했습니다.

공식은 다음과 같습니다.다음:

=TEXTJOIN(", ",TRUE,IF(EXACT(C5:C14,$F$5),B5:B14,""))

공식 분석 :

  • EXACT(C5:C14,$F$5)

이 부분은 Range C5:14 의 어떤 값이 셀 F5 와 일치하는지 확인하고 TRUE 와 <3을 반환합니다>FALSE .

  • IF(EXACT(C5:C14,$F$5),B5:B14,"")

이 부분은 TRUE .<1를 얻는 이름을 반환합니다>

  • TEXTJOIN(", ",TRUE,IF(EXACT(C5:C14,$F$5),B5:B14,""))

마지막으로 각 이름 뒤에 쉼표를 사용하여 모든 이름을 결합합니다.

빠른 참고 사항

여기에 있는 모든 수식(두 번째 수식 제외)은 배열 수식입니다. 즉, 이 수식을 입력하려면 Enter 버튼만 누르는 대신 Ctrl+Shift+Enter 를 눌러야 합니다. 그러나 Office 365 사용자라면 Enter만 누르면 적용할 수 있습니다.

결론

이 문서에서는 셀에 목록의 특정 텍스트가 포함된 경우 값을 반환하는 다양한 경우에 대한 서로 다른 수식을 좁혔습니다. 문제에 대한 해결책을 찾을 수 있기를 바랍니다. 제안이나 질문이 있으면 의견을 남겨주세요. 또한 블로그 를 방문하여 더 많은 기사를 볼 수 있습니다.

Hugh West는 업계에서 10년 이상의 경험을 가진 고도로 숙련된 Excel 트레이너이자 분석가입니다. 그는 회계 및 재무 학사 학위와 경영학 석사 학위를 보유하고 있습니다. Hugh는 교육에 대한 열정을 가지고 있으며 따라하기 쉽고 이해하기 쉬운 독특한 교수법을 개발했습니다. Excel에 대한 그의 전문 지식은 전 세계 수천 명의 학생과 전문가가 자신의 기술을 향상시키고 경력에서 탁월하도록 도왔습니다. Hugh는 자신의 블로그를 통해 자신의 지식을 전 세계와 공유하고 개인과 기업이 잠재력을 최대한 발휘할 수 있도록 무료 Excel 자습서 및 온라인 교육을 제공합니다.