배움터  
  HOME > 배움터 > Daily Tip
Daily Tip

제품:   Excel 버전:   2003
검색어:  
제목:   특정한 단어가 포함된 경우에만 결과값 표시하기
     
 

새 페이지 1

  Q&A>

오늘은 엑셀 묻고 답하기 게시판에 [박찬우]님이 질문 하신 내용에 [허허허]님이 답변한 내용을 소개합니다. (사용버전: Excel 2003)

[질문]
a1에 "9.1-9.5까지 서울출장" 입력되어 있고 b1에는 금액이 입력되어 있습니다.
a1의 문자열중 "대구,대전,인천"중 어느 하나라도 입력되어 있으면 금액을 표시해주고 없으면 공란이 나타나게 하려면, 함수를 어찌 써야 하나여?

[답변]
=IF(AND(ISERROR(FIND("대구",A1)),ISERROR(FIND("대전",A1)),ISERROR(FIND("인천",A1))),"",B1) 라고 수식을 입력해 보세요.

  STEP> 따라하기

다음과 같은 예제가 있다고 가정하겠습니다. A1열에 '대구, 대전, 인천'이라는 단어가 포함되어 있는 경우에만 해당 금액을 결과 란에 표시하도록 하겠습니다.

<1> C2 셀에 셀 포인터를 놓고 다음과 같이 수식을 입력합니다.
=IF(AND(ISERROR(FIND("대구",A2)),ISERROR(FIND("대전",A2)),ISERROR(FIND("인천",A2))),"",B2)

* FIND, ISERROR, AND, IF 함수를 사용하였습니다.

함수설명)
A2셀에 특정 단어(대구, 대전, 인천)중 한 단어라도 포함되어 있다면, FIND 함수에 의해 A2셀에의 문자열 중 해당 단어의 위치가 반환되고 ISERROR 함수 결과는 FALSE를 반환합니다. FALSE가 하나라도 포함되어 있다면 AND함수 결과는 FALSE가 되므로 IF함수의 결과로 B2셀에 입력된 값을 표시하게 됩니다.

지정한 단어가 포함되어 있지 않은 경우에는 #VALUE! 를 반환하며, ISERROR 함수의 결과는 TRUE가 됩니다.

<2> C2셀의 값을 C5셀까지 채우기 하면 다음과 같은 결과가 나타납니다.
A열에 입력된 문자열 중 대구와 인천이 입력되어 있는 3, 4행의 결과 란에는 금액이 표시되는 것을 확인할 수 있습니다.


 

  참고> FIND, ISERROR 함수

- FIND 함수

FIND 함수는 다른 텍스트 문자열(within_text)에서 텍스트 문자열(find_text)을 찾아서 within_text의 첫째 문자에서 find_text의 시작 위치 번호를 반환합니다.
* 형식: FIND(find_text,within_text,start_num)

- Find_text : 찾으려는 텍스트입니다.
- Within_text : 찾으려는 텍스트를 포함하는 문자열입니다.
- Start_num : 검색을 시작할 문자를 지정합니다. within_text에서 첫 문자의 문자 번호는 1입니다. start_num을 생략하면 1로 간주됩니다.

예) A2셀에 '8.2-8.4까지 대구출장' 입력된 경우, FIND("대구",A2)의 결과는 11 입니다.


- ISERROR 함수

ISERROR 함수는 검사 값이 오류값(#N/A, #VALUE!, #REF!, #DIV/0!, #NUM!, #NAME?, #NULL!)을 참조하면 TRUE를 그렇지 않으면 FALSE를 반환합니다.
* 형식: ISERROR(value)

- value: 검사할 값입니다.

예) A2셀에 '8.2-8.4까지 대구출장' 입력된 경우, ISERROR(FIND("대구",A2))의 결과는 FIND의 결과가 11이므로 ISERROR(11)의 결과는 FALSE가 됩니다.