엑셀 다루기

[엑셀 함수] 문자열 검색하기

남익 2017. 12. 29. 00:48
반응형

FIND 함수로 문자열 검색하기


엑셀을 문서를 정리하다보면 특정 문자를 검색해야할 경우가 있습니다.

하지만 검색해서 찾아야 할 내용이 많은 경우 하나씩 찾다보면 헷갈리거나 일일이 표시를 해야하는 경우가 있습니다. 그러다보면 짜증이 나는 경우도 있게 되는데요

엑셀에서 제공하는 함수중 FIND() 함수를 사용하여 문자열을 검색하는 방법을 알아보도록 하겠습니다.


1. 사용방법

 - FIND(find_text, within_text, [start_num])

    ⊙ find_text : 필수 요소이며, 찾을려고 하는 문자

    ⊙ within_text : 필수 요소이며, find_text 인자에서 찾을려는 문자가 포함된 문자열

    ⊙ start_num : 선택 요소이며, within_text에서 검색을 시작할 위치입니다. 시작할 문자번호는 1부터 시작하며, 생략하면 1로 기본 설정됩니다.

문자열에서 찾으려는 문자가 있는 위치를 반환하여 알려준다.


2. 샘플

위 샘플 데이터를 참조하여 내가 원하는 문자가 포함이 되어 있는지 확인해보겠습니다.

검색을 할 문자는 "a" 이고 "a"가 포함되어 있는 경우와 포함되어 있지 않은 경우 어떻게 다른지 확인하겠습니다.


FIND() 함수의

첫번째 인자에 찾을려는 문자를 입력 -> "a"

두번째 인자에 찾기 위한 텍스트 선택 > 텍스트가 특정 Cell

세번째 인자는 선택사항이기 때문에 생략


결과를 확인해보면

"a"가 포함된 경우 문자의 위치 번호를 반환합니다.

"a"가 포함되어 있지 않은 경우 #VALUE! 오류를 반환합니다.

해당 결과로 찾을려는 문자가 있는 경우 위치를 알 수 있지만 포함되어 있지 않은 경우 오류를 발생하는 것을 알 수 있습니다.


1. 대소문자 구분 여부 확인하기

찾는 문자의 대소문자 구분여부를 확인하기 위해서 소문자 "a"가 아닌 대문자 "A"를 입력하는 경우 모두 해당 문자를 검색하지 못해서 오류를 발생하는 것을 확인 할 수 있어서 찾기 위해 입력한 문자의 대소문자도 구분하는 것을 확인 할 수 있었습니다.


2. ISNUMBER() 함수를 활용하여 반환되는 값을 TRUE, FALSE로 반환하기

작성한 FIND() 겉에 ISNUMBER()로 감싸서 사용하는 경우 FIND()의 반환값이 숫자인 경우 "TRUE", 반환값이 숫자가 아닌 경우 "FALSE"를 반환하는 것을 확인할 수 있습니다.


3. ISNUMBER(), IF() 함수를 활용하여 반환되는 값으로 특정 문자 표시하기

2 항에서 사용한 함수에 IF()로 감싸서 해당 조건이 참인 경우 "포함", 거짓인 경우 "불포함"을 표현하도록 사용하여 "a" 문자가 포함되어 있는 경우 "포함", 포함되어 있지 않은 경우 "불포함"의 텍스트를 반환할 수 있는 것을 확인 할 수 있었습니다.


IF 함수 참조 : 2017/12/10 - [엑셀 다루기] - [엑셀 함수] 조건식 IF를 다뤄보자


실제 엑셀 내용에서 찾기 함수인 FIND()를 사용하는 경우 FIND() 단일에서는 찾는 문자가 없는 경우 오류를 반환하여 표시를 하는데 있어서 좋지 않은 점을 볼 수 있습니다. 하지만 3번 예제처럼 ISNUMBER(), IF() 함수를 같이 사용하여 내가 원하는 결과를 표시할 수 있도록 사용을 한다면 좀 더 원하는 문자를 찾는 경우 깔끔하게 정리되어서 확인 할 수 있을 것으로 보입니다.






반응형