목차▾
엑셀 SEARCH 함수란?
엑셀 SEARCH 함수는 텍스트 내에서 다른 텍스트의 시작 위치를 반환하는 텍스트 함수입니다. FIND와 유사하지만 대소문자 무시 + 와일드카드 지원 두 가지 차이. 부분 매칭 판별, LEFT/MID 파싱, 조건부 서식 동적 규칙 등에 표준.
구문은 =SEARCH(find_text, within_text, [start_num]). 위치는 1부터, 못 찾으면 #VALUE!(값 유형 오류) → IFERROR 감싸기 관행.
SEARCH vs FIND
| 항목 | SEARCH | FIND |
|---|---|---|
| 대소문자 | 무시 (Case-insensitive) | 구분 (Case-sensitive) |
| 와일드카드 | ✅ (*, ?) | ❌ (리터럴) |
| 못 찾으면 | #VALUE! | #VALUE! |
| 속도 | 살짝 느림 | 살짝 빠름 |
→ 모호 검색·와일드카드는 SEARCH, 정확 대소문자 구분은 FIND.
동작 예시
=SEARCH("world", "Hello World") → 7 (대소문자 무시)
=FIND("world", "Hello World") → #VALUE! (W ≠ w)
=SEARCH("h*d", "Hello World") → 1 (h로 시작 d로 끝)
=SEARCH("h?llo", "Hello World") → 1 (?는 정확히 1글자)
=SEARCH("~*", "5% * 할인") → 4 (~* 는 리터럴 *)
=SEARCH("a", "banana", 3) → 4 (3번째부터 검색)
=SEARCH("xyz", "Hello World") → #VALUE! (못 찾음)
와일드카드 3종
| 기호 | 의미 | 예시 |
|---|---|---|
| * | 0개 이상 문자 (아무 길이) | SEARCH("*.pdf", "file.pdf") → 1 |
| ? | 정확히 1글자 | SEARCH("h?llo", "hello") → 1 |
| ~ | 와일드카드 이스케이프 (리터럴 * 또는 ?) | SEARCH("~*", "5*3") → 2 |
→ 파일 확장자 감지, 패턴 매칭, 부분 문자열 검사에 유용. FIND에는 없는 기능.
실전 사용 시나리오 8가지
- 특정 문자 위치 —
=SEARCH("@", A1) - IFERROR 부분 매칭 —
=IFERROR(SEARCH("Excel", A1), 0) - ISNUMBER 포함 검사 —
=ISNUMBER(SEARCH("Excel", A1)) - LEFT + SEARCH (@ 앞) —
=LEFT(A1, SEARCH("@", A1) - 1) - 두 번째 발생 위치 —
=SEARCH("-", A1, SEARCH("-", A1) + 1) - 조건부 서식 (포함 강조) — 서식 수식:
=ISNUMBER(SEARCH("긴급", A1)) - 파일 확장자 감지 —
=IFERROR(SEARCH(".pdf", A1) > 0, FALSE) - MID + SEARCH 파싱 — 구분자 사이 텍스트 추출
IFERROR·ISNUMBER 결합 패턴
부분 매칭 (TRUE/FALSE)
=ISNUMBER(SEARCH("찾을값", A1))
→ 포함되면 TRUE, 없으면 FALSE
조건부 값 반환
=IF(ISNUMBER(SEARCH("긴급", A1)), "🔴", "")
→ "긴급" 포함 시 빨간 원, 아니면 빈 값
COUNTIF 대체 (와일드카드 유연)
=SUMPRODUCT(--ISNUMBER(SEARCH("찾을값", A1:A100)))
→ 포함 셀 개수 (대소문자 무시)
LEFT + SEARCH 파싱
=LEFT(A1, SEARCH("@", A1) - 1)
→ example@domain.com → "example"
안전 버전:
=IFERROR(LEFT(A1, SEARCH("@", A1) - 1), A1)
→ @ 없으면 원본 반환
자주 발생하는 함정 6가지
- 못 찾으면 #VALUE! —
IFERROR(SEARCH(...), 0)감싸기 관행 - 대소문자 구분 필요할 때 — SEARCH는 무시 → FIND 사용
- 와일드카드 리터럴 검색 —
*,?문자 자체는~*,~? - start_num 오버플로우 — 텍스트 길이 초과 시
#VALUE!. IFERROR 안전 - 첫 번째 위치만 반환 — 두 번째 이후는 start_num 조정
- 한글 SEARCH vs SEARCHB — SEARCH는 글자 단위, SEARCHB는 바이트 (한글 2바이트). 한글엔 SEARCH
자주 묻는 질문
Q. SEARCH 함수 사용법은?
=SEARCH(찾을값, 대상, [시작위치]) 형식. 대소문자 무시하고 위치 반환. 예: =SEARCH("world", "Hello World") → 7. 못 찾으면 #VALUE!(값 유형 오류).
Q. SEARCH vs FIND 차이는?
SEARCH는 대소문자 무시 + 와일드카드 지원, FIND는 대소문자 구분 + 리터럴 그대로. 모호 검색은 SEARCH, 정확한 매칭은 FIND.
Q. 특정 문자열 포함 여부는?
=ISNUMBER(SEARCH("찾을값", A1)) → TRUE/FALSE. 또는 =IFERROR(SEARCH("찾을값", A1) > 0, FALSE). COUNTIF와 다르게 대소문자 무시 + 와일드카드.
Q. #VALUE! 오류가 나요.
못 찾음 또는 start_num 오버플로우. =IFERROR(SEARCH(...), 0) 감싸기 권장. 결과 0이면 포함 X, 양수면 위치.
Q. 와일드카드 사용법은?
* (0개 이상 문자), ? (정확히 1글자), ~ (와일드카드 이스케이프). 예: SEARCH("*.pdf", A1) → .pdf로 끝나는지, SEARCH("~*", A1) → 리터럴 * 찾기.
Q. LEFT/MID와 결합은?
LEFT+SEARCH로 앞부분 추출: =LEFT(A1, SEARCH("@", A1)-1) → @ 앞. MID+SEARCH로 중간 추출. IFERROR로 감싸서 오류 방지.
Q. 두 번째 발생 위치는?
=SEARCH("-", A1, SEARCH("-", A1) + 1). 첫 검색 위치 + 1을 다음 시작점으로. 세 번째는 다시 중첩.
Q. 구글 스프레드시트에서도 동일하게 작동하나요?
네. SEARCH·FIND 모두 표준 텍스트 함수로 Google Sheets, LibreOffice Calc, Apple Numbers, 한컴 한셀, WPS에서 동일하게 작동합니다.
본 페이지는 Microsoft Support 공식 SEARCH·FIND 문서를 기준으로 작성되었습니다. 정확한 동작은 Excel 버전·환경에 따라 달라질 수 있으니 중요한 작업 전에는 실제 환경에서 확인하세요.