엑셀 n번째 문자열 위치 찾기 공식
지원 버전 자세히 보기
엑셀 2013 이전엑셀 2016엑셀 2019엑셀 2021엑셀 2024M365웹 엑셀
문장에서 문자열이 n번째 나타나는 위치를 찾는 공식입니다.
인수 설명
01모든 버전 호환 공식
=FIND ( "|", SUBSTITUTE ( 셀, 찾을문자, "|", n번째 ) )인수 설명 자세히 보기(인수를 클릭하면 해당 영역만 강조됩니다. 여러 개를 함께 켜고 끌 수 있습니다.)
인수구분설명
셀필수찾을 문자열이 포함된 문장이 입력된 셀입니다. 문장에 |가 포함되어 있으면 수식의 |를 문장에 없는 다른 문자로 바꿉니다.
찾을문자필수셀에서 위치를 찾을 문자 또는 문자열입니다.
n번째필수찾을 순번을 나타내는 양의 정수입니다. 문장에 포함된 횟수보다 크면 #VALUE! 오류를 반환합니다.
A
B
C
D
E
F
G
1
문장
찾을 문자열
순번
기존 공식 위치
TEXTBEFORE 위치
2
사과나무 사과열렸네
사과
2
6
6
3
서울-부산-대구
-
2
6
6
4
AB-AB-AB
AB
3
7
7
5
ID/2026/08
/
2
8
8
6
가나다라마바사가
가
2
8
8
7
red blue red
red
2
10
10
8
동동서동
동
3
4
4
9
02M365·Excel 2024 이상 공식
=LEN ( TEXTBEFORE ( 셀, 찾을문자, n번째 ) ) + 1인수 설명 자세히 보기
인수구분설명
셀필수찾을 문자열이 포함된 문장이 입력된 셀입니다.
찾을문자필수셀에서 위치를 찾을 문자 또는 문자열입니다.
n번째필수찾을 순번을 나타내는 양의 정수입니다.
A
B
C
D
E
F
G
1
문장
찾을 문자열
순번
기존 공식 위치
TEXTBEFORE 위치
2
사과나무 사과열렸네
사과
2
6
6
3
서울-부산-대구
-
2
6
6
4
AB-AB-AB
AB
3
7
7
5
ID/2026/08
/
2
8
8
6
가나다라마바사가
가
2
8
8
7
red blue red
red
2
10
10
8
동동서동
동
3
4
4
9
이 공식이 사용하는 함수
동작 원리
01모든 버전 호환 공식
SUBSTITUTE 함수가 n번째 찾을 문자열을 |로 바꾸고 FIND 함수가 |의 위치를 반환합니다.
모든 버전 호환 공식의 예제 시트에서 E2 셀이 6을 반환하는 계산 과정입니다. 단계마다 강조된 부분이 어떻게 계산되는지 살펴보세요.
1
SUBSTITUTE 함수가 n번째 문자열을 바꿉니다
SUBSTITUTE 함수가 A2 셀에서 두 번째로 나타난 사과만 |로 바꾸어 위치를 찾을 표시를 남깁니다.
=SUBSTITUTE ( A2, B2, "|", C2 )
= "사과나무 |열렸네"
두 번째 사과가 |로 바뀐 문자열입니다. 2
FIND 함수가 표시의 위치를 찾습니다
바뀐 문자열에서 |는 여섯 번째 글자에 있으므로 FIND 함수가 두 번째 사과의 시작 위치 6을 반환합니다.
=FIND ( "|", SUBSTITUTE ( A2, B2, "|", C2 ) )
= 6
두 번째 사과가 시작하는 위치입니다. 02M365·Excel 2024 이상 공식
TEXTBEFORE 함수가 n번째 찾을 문자열 앞부분을 반환하고 LEN 함수가 그 길이에 1을 더해 시작 위치를 계산합니다.
M365·Excel 2024 이상 공식의 예제 시트에서 F2 셀이 6을 반환하는 계산 과정입니다. 단계마다 강조된 부분이 어떻게 계산되는지 살펴보세요.
1
TEXTBEFORE 함수가 앞부분을 반환합니다
TEXTBEFORE 함수가 A2 셀에서 두 번째 사과 앞에 있는 사과나무와 뒤 공백을 반환합니다.
=TEXTBEFORE ( A2, B2, C2 )
= "사과나무 "
두 번째 사과 앞의 다섯 글자이며 마지막 공백도 포함합니다. 2
LEN 함수가 시작 위치를 계산합니다
LEN 함수가 앞부분의 다섯 글자를 세고 1을 더해 두 번째 사과의 시작 위치 6을 반환합니다.
=LEN ( TEXTBEFORE ( A2, B2, C2 ) )+1
= 6
두 번째 사과가 시작하는 위치입니다.
그런데 세로막대 "|" 는 어떻게 입력하나요..?
그동안 find함수로 순차적으로 찾아 해결했는데 한방에 해결할 수 있어 좋네요
감사합니다
예를 들면 한 셀에 이름:홍길동, 나이:33세, 휴대폰:010-1111-1111 라고 적혀있을 때 홍길동 또는 33세 등을 추출하는 방법이 있을까요?