목차▾
엑셀 FIND 함수란?
엑셀 FIND 함수는 텍스트 안에서 특정 문자열의 시작 위치(1부터)를 찾는 텍스트 함수입니다. 이메일 분리, URL 파싱, 텍스트 분할의 핵심. LEFT·MID·RIGHT와 조합 해서 동적 추출에 사용해요. 대소문자를 구분하고 와일드카드는 미지원.
구문은 =FIND(찾을텍스트, 검색대상, [시작위치]) 3 인수. 못 찾으면 #VALUE! 오류 발생 — IFERROR로 감싸거나 ISNUMBER로 포함 여부만 확인하는 패턴이 표준. 모든 Excel 버전에서 지원.
FIND vs SEARCH
두 함수는 비슷해 보이지만 결정적 차이가 있습니다.
| 항목 | FIND | SEARCH |
|---|---|---|
| 대소문자 | 구분 | 무시 |
| 와일드카드 | 미지원 | *, ? 지원 |
| FIND("a","Apple") | #VALUE! | 1 (A=a로 인식) |
| FIND("A","Apple") | 1 | 1 |
| SEARCH("?pp","Apple") | — | 1 (와일드카드) |
→ 정확 매칭 = FIND, 유연 매칭 = SEARCH.
동작 규칙
| 입력 | 결과 |
|---|---|
| FIND("p","Apple") | 2 |
| FIND("p","Apple",3) | 3 |
| FIND("z","Apple") | #VALUE! |
| FIND("","Apple") | 1 |
| FIND("Apple","Apple") | 1 |
| FIND("?","abc?d") | 4 (?는 그냥 문자) |
실전 사용 시나리오 10가지
- 단순 위치 —
=FIND("@", A1)→ 이메일 @ 위치 - 이메일 아이디 —
=LEFT(A1, FIND("@", A1)-1) - 이메일 도메인 —
=MID(A1, FIND("@", A1)+1, 999) - 포함 여부 —
=ISNUMBER(FIND("VIP", A1)) - N번째 매칭 (중첩) —
=FIND("/", A1, FIND("/", A1)+1) - 이름·성 분리 —
=LEFT(A1, FIND(" ", A1)-1)/=MID(A1, FIND(" ", A1)+1, 999) - 마지막 글자 추출 —
=RIGHT(A1, LEN(A1) - FIND("끝패턴", A1)) - 오류 안전 —
=IFERROR(FIND("@", A1), "없음") - 특정 위치부터 —
=FIND(".", A1, FIND(".", A1)+1)→ 두 번째 . (IP·버전) - 텍스트 분할 (구버전 우회) — "a|b|c"에서 b 추출은 FIND 중첩. Excel 365는
TEXTSPLIT가 깔끔
ISNUMBER + FIND — 포함 검사 표준
=IF(ISNUMBER(FIND("VIP", A1)), "VIP 고객", "일반")
- FIND가 위치(숫자) 반환하면 포함
- 못 찾으면 #VALUE! → ISNUMBER가 FALSE 처리
- 대안:
=IF(COUNTIF(A1, "*VIP*"), ...)(와일드카드, 대소문자 무시)
자주 발생하는 오류·함정 6가지
- #VALUE! — 못 찾음 — 대소문자 구분이라 "apple"과 "Apple" 다름. 무시 원하면 SEARCH 또는 UPPER/LOWER로 통일
- 와일드카드 안 됨 —
FIND("?", A1)은 ? 자체 검색. 와일드카드 필요시 SEARCH - 빈 텍스트는 항상 1 —
FIND("", A1)= 1 - start_num 0 또는 음수 — 0, 음수, within_text 길이 초과 → #VALUE!. 1 이상 LEN 이하만
- 숫자 vs 텍스트 —
FIND(123, "abc123")= 4 (숫자도 텍스트로 변환되어 검색) - LEFT/MID 결합 시 -1, +1 실수 —
LEFT(A1, FIND("@",A1)-1)필수 (@ 제외), MID는 +1 (@ 다음부터)
자주 묻는 질문
Q. FIND 함수 사용법은?
=FIND(찾을텍스트, 검색대상, [시작위치]) 형식입니다. 예: =FIND("@", A1) → A1의 @ 위치 반환 (1부터). 못 찾으면 #VALUE!. 대소문자 구분.
Q. FIND와 SEARCH의 차이는?
FIND는 대소문자 구분 + 와일드카드 미지원, SEARCH는 대소문자 무시 + 와일드카드 지원. FIND("a","Apple") → #VALUE!, SEARCH("a","Apple") → 1.
Q. 이메일 아이디·도메인 분리는?
아이디 =LEFT(A1, FIND("@",A1)-1), 도메인 =MID(A1, FIND("@",A1)+1, 999). "abc@gmail.com" → "abc" + "gmail.com".
Q. 두 번째 매칭 위치는?
FIND 중첩: =FIND("/", A1, FIND("/", A1)+1). 첫 번째 / 위치 + 1부터 다시 검색하여 두 번째 / 위치. N번째는 반복.
Q. 텍스트 포함 여부만 확인하려면?
=ISNUMBER(FIND("VIP", A1)) → TRUE/FALSE. FIND가 위치(숫자) 반환 시 포함, #VALUE!면 미포함. 대소문자 무시 원하면 SEARCH 사용.
Q. #VALUE! 오류 안 나오게 하려면?
IFERROR 감싸기: =IFERROR(FIND("@", A1), "없음"). 또는 IFNA. SEARCH도 못 찾으면 #VALUE!라 같은 처리.
Q. 와일드카드 (*, ?)를 쓸 수 있나요?
FIND는 와일드카드 미지원 (? 와 *는 문자 그대로 검색). 와일드카드 필요하면 SEARCH 사용: =SEARCH("?pp", "Apple") → 1. 또는 COUNTIF.
Q. 구글 스프레드시트에서도 동일하게 작동하나요?
네. FIND는 표준 텍스트 함수로 Google Sheets, LibreOffice Calc, Apple Numbers, 한컴 한셀, WPS에서 동일하게 작동합니다.
본 페이지는 Microsoft Support 공식 FIND·SEARCH 문서를 기준으로 작성되었습니다. 정확한 동작은 Excel 버전·환경에 따라 달라질 수 있으니 중요한 작업 전에는 실제 환경에서 확인하세요.