ExcelMID텍스트 추출

엑셀 MID

텍스트 중간 임의 위치에서 지정한 글자 수만큼 잘라내는 함수입니다

MID 수식 구조

=MID(텍스트, 시작 위치, 길이)

텍스트 (text)

자를 원본 문자열 또는 셀 참조. A1, "990101-1234567"

시작 위치 (start_num)

추출을 시작할 위치. 1부터 시작(첫 글자가 1). 0이나 음수면 #VALUE! 오류

길이 (num_chars)

추출할 글자 수. 시작 위치 + 길이가 텍스트 길이보다 크면 끝까지만 가져옴

LEFT/RIGHT가 한쪽 끝 기준이라면 MID는 임의 위치에서 임의 길이를 잘라낼 수 있는 가장 유연한 추출 함수입니다.

직접 체험해보세요

시작 위치와 길이를 슬라이더로 조절하면 중간 일부가 실시간으로 추출됩니다

D2=MID(A2, 5, 4)
5
4

시작 5, 길이 4 → 중간 4자리 (가운데 번호)

AD
1원본 텍스트추출 결과
2
010-1234-5678
12345678910111213
1234
5번째부터 4글자 추출 → "1234"

실전 활용 예제

=MID(A2, 3, 4)

고정 위치 추출. 주민등록번호에서 월일(3~6자리), 코드에서 연도, 전화번호 가운데 자리처럼 위치가 항상 같을 때.

예시: =MID("990101-1234567", 3, 4)"0101"
=MID(A2, FIND("@", A2)+1, 100)

구분자 뒤 전체를 추출하는 패턴. 이메일에서 도메인만 뽑을 때. 길이를 충분히 크게(100)두면 끝까지 자동 추출.

예시: =MID("hong@daum.net", FIND("@", "hong@daum.net")+1, 100)"daum.net"
=MID(A2, FIND("-", A2)+1, FIND("-", A2, FIND("-", A2)+1) - FIND("-", A2) - 1)

두 구분자 사이만 추출. KR-2026-001에서 '2026'만 뽑을 때처럼 양쪽이 구분자로 감싸진 경우.

예시: =MID("KR-2026-001", 4, 4)"2026"
더 알아보기

LEFT / RIGHT / MID 차이

세 함수 모두 텍스트 일부를 잘라내지만, 자르는 위치가 다릅니다.

LEFT — 왼쪽부터

=LEFT("ABCDE", 2) → "AB"

RIGHT — 오른쪽부터

=RIGHT("ABCDE", 2) → "DE"

MID — 중간 (시작 위치 + 길이)

=MID("ABCDE", 2, 3) → "BCD"

인자 수: LEFT/RIGHT는 2개, MID는 3개. 시작 위치가 유동적이면 MID, 한쪽 끝 기준이면 LEFT 또는 RIGHT를 씁니다.

시작 위치는 0이 아니라 1부터

프로그래밍 언어(JavaScript·Python 등)는 첫 글자를 0번으로 세지만, 엑셀의 MID는 첫 글자가 1번입니다. C/Python에서 넘어온 사용자가 가장 자주 헷갈리는 부분.

=MID("ABCDE", 1, 1) → "A"

=MID("ABCDE", 2, 1) → "B"

=MID("ABCDE", 5, 1) → "E"

시작 위치에 0이나 음수를 넣으면 #VALUE! 오류가 납니다. 텍스트 길이보다 큰 값을 넣으면 빈 문자열("")이 반환됩니다.

FIND와 조합한 동적 추출

MID의 진짜 위력은 시작 위치를 FIND·SEARCH 결과로 넘길 때 나옵니다. 데이터마다 구분자 위치가 달라도 자동으로 적응합니다.

이메일 도메인 추출

=MID(A2, FIND("@", A2)+1, 100)

→ "hong@daum.net" → "daum.net"

두 구분자 사이 추출 (예: ID에서 가운데 부분)

=MID(A2, FIND("-", A2)+1, FIND("-", A2, FIND("-", A2)+1) - FIND("-", A2) - 1)

→ "KR-2026-001" → "2026"

공식이 길어지면 _xlfn.TEXTBEFORE, _xlfn.TEXTAFTER (Excel 365) 또는 PowerQuery를 쓰는 편이 유지보수에 좋습니다.

자주 묻는 질문 (FAQ)

Q. 길이를 텍스트 끝까지 넉넉히 주려면?

실제 길이보다 큰 숫자(예: 100, 1000)를 넣으면 텍스트 끝까지 자동으로 가져옵니다. 정확한 끝 위치를 계산하지 않아도 되므로 =MID(A2, FIND("@", A2)+1, 999) 패턴이 자주 쓰입니다.

Q. MID 결과를 숫자로 쓰려면?

MID는 항상 텍스트를 반환합니다. 계산에 사용하려면 =VALUE(MID(A2, 3, 4)) 또는 MID(A2, 3, 4) * 1로 숫자 변환하세요.

Q. MIDB와 차이는?

MIDB는 글자가 아닌 바이트 단위로 자릅니다. 한글 1글자가 2바이트로 계산돼요. 일반적으로 글자 단위 MID가 더 직관적이고 구글 시트 호환성도 좋습니다.

Q. 구글 스프레드시트에서도 동일하게 작동하나요?

네. MID 함수는 같은 문법으로 사용할 수 있습니다. MIDB는 구글 시트 미지원입니다.