Menu

엑셀 LEFT, RIGHT, MID 함수 사용법: 텍스트 일부 추출

=LEFT(A2,3)은 A2의 처음 3글자를, =RIGHT(A2,2)는 마지막 2글자를, =MID(A2,5,4)는 5번째 글자부터 4글자를 반환합니다. 길이가 달라질 때는 FIND, LEN과 함께 씁니다.

이 페이지의 모든 시트는 실제로 동작합니다. 숫자나 수식을 바꾸면 다시 계산됩니다.

=LEFT(A2,3)은 A2 텍스트의 처음 3글자를, =RIGHT(A2,1)은 마지막 글자를, =MID(A2,5,4)는 5번째 글자부터 4글자를 반환합니다. NYC-2041-B 코드라면 NYC, B, 2041입니다.

코드 분해하기
B2
ABCD
1CodeCityNumberSize
2NYC-2041-BNYC2041B
3LAX-1187-ALAX1187A
4SFO-3302-CSFO3302C
5BOS-0915-BBOS0915B
셀을 클릭하면 수식이 보입니다. 숫자나 수식을 바꾸면 시트가 다시 계산됩니다.

C2를 클릭해 5를 4로 바꿔 보세요. 결과가 이제 대시부터 시작합니다. 공백과 문장 부호도 글자로 세며, 첫 글자의 위치는 1입니다.

구문

=LEFT(text, [num_chars])
=RIGHT(text, [num_chars])
=MID(text, start_num, num_chars)
  • num_chars는 LEFT와 RIGHT에서 생략할 수 있으며 기본값은 1입니다.
  • 있는 글자보다 많이 요청하면 오류가 아니라 텍스트 전체가 나옵니다. =LEFT("Ann",10)은 Ann입니다.
  • 글자 수가 음수이면 #VALUE!가 나옵니다. 예를 들어 3글자보다 짧은 텍스트에 =LEFT(A2,LEN(A2)-3)을 쓸 때입니다.

길이가 달라질 때: FIND와 함께 쓰는 LEFT, RIGHT, MID

코드의 길이가 모두 같은 경우는 드뭅니다. FIND로 구분 기호를 찾고 글자 수는 수식이 계산하게 하세요:

대시 앞과 뒤의 텍스트
B2
ABC
1CodeBefore the dashAfter the dash
2NY-2041NY2041
3BOSTON-15BOSTON15
4LA-30087LA30087
셀을 클릭하면 수식이 보입니다. 숫자나 수식을 바꾸면 시트가 다시 계산됩니다.
  • FIND("-",A2)는 대시의 위치를 반환하며, NY-2041에서는 3입니다.
  • LEFT(A2,3-1)은 그 앞의 2글자를 가져옵니다.
  • MID(A2,3+1,50)은 대시 다음부터 시작해 최대 50글자를 가져옵니다. 어떤 코드보다도 긴 길이이므로 끝까지 닿습니다.

Microsoft 365와 Excel 2024에서는 TEXTBEFORE(A2,"-")와 TEXTAFTER(A2,"-")가 더 짧은 수식으로 같은 결과를 냅니다. 텍스트 나누기를 참고하세요.

앞이나 뒤의 글자 지우기

글자를 버리려면 나머지를 남깁니다. LEN이 전체 길이를 주고, 거기서 지울 만큼을 뺍니다:

앞이나 끝에서 글자 지우기
B2
ABC
1TextWithout first 3Without last 2
2ID-5821058210ID-582
3ID-77347734ID-77
4ID-120120ID-1
셀을 클릭하면 수식이 보입니다. 숫자나 수식을 바꾸면 시트가 다시 계산됩니다.
마지막 네 자리
B2
AB
1CardLast four
24111 2222 3333 9876
셀을 클릭하면 수식이 보입니다. 숫자나 수식을 바꾸면 시트가 다시 계산됩니다.

직접 해 보세요: B2에서 A2에 있는 카드 번호의 마지막 4글자를 반환하세요.

코드에서 숫자 추출하기

LEFT, RIGHT, MID는 글자가 숫자여도 항상 텍스트를 반환합니다. 텍스트 숫자는 숫자처럼 보이지만 SUM이 건너뛰므로, 추출한 숫자의 합계가 0으로 나올 수 있습니다:

텍스트 숫자와 숫자
B2
ABC
1OrderMID (text)VALUE(MID)
2SO-0120-X0120120
3SO-0345-Y0345345
4SO-1000-Z10001000
5Total01465
셀을 클릭하면 수식이 보입니다. 숫자나 수식을 바꾸면 시트가 다시 계산됩니다.

B열은 아직 텍스트이므로 앞의 0이 붙은 0120을 보여 주고, B5의 합계는 0입니다. C열은 각 조각을 VALUE로 변환하므로 합계가 맞습니다. =--MID(A2,4,4)와 =MID(A2,4,4)*1도 같은 방식으로 변환합니다. 자세한 내용은 텍스트를 숫자로를 참고하세요.

수량 꺼내기
B2
AB
1ItemQuantity
2PK-045-BAG
셀을 클릭하면 수식이 보입니다. 숫자나 수식을 바꾸면 시트가 다시 계산됩니다.

직접 해 보세요: 수량은 두 대시 사이에 있고 항상 3자리입니다. B2에서 더할 수 있는 숫자로 수량을 추출하세요.

흔한 실수: 날짜에 LEFT 쓰기

날짜는 숫자로 저장되므로 2026-03-15 날짜에 =LEFT(B2,4)를 쓰면 2026이 나오지 않습니다. 날짜 뒤에 있는 일련번호 46096의 처음 4자리인 4609가 나옵니다.

LEFT는 날짜 뒤의 숫자를 읽습니다
C2
ABCD
1EventDateLEFT(date,4)Year
2Launch2026-03-1546092026
32026
셀을 클릭하면 수식이 보입니다. 숫자나 수식을 바꾸면 시트가 다시 계산됩니다.

연도를 숫자로 얻으려면 YEAR(B2)를, 텍스트로 얻으려면 TEXT(B2,"yyyy")를 쓰세요. 다른 부분은 MONTH, DAY와 "mmm"이나 "dd"를 쓰는 TEXT로 구합니다.

자주 묻는 질문

엑셀에서 앞의 N글자를 추출하려면 어떻게 하나요?

LEFT에 글자 수를 넣습니다: =LEFT(A2,3)은 처음 3글자를 반환합니다. 두 번째 인수가 없으면 =LEFT(A2)는 첫 글자만 반환합니다.

엑셀에서 앞이나 뒤의 글자를 지우려면 어떻게 하나요?

LEN으로 나머지를 남깁니다: =RIGHT(A2,LEN(A2)-3)은 처음 3글자를 지우고, =LEFT(A2,LEN(A2)-2)는 마지막 2글자를 지웁니다.

MID가 반환한 숫자를 더할 수 없는 이유는 무엇인가요?

LEFT, RIGHT, MID는 항상 텍스트를 반환하고 SUM은 텍스트를 건너뜁니다. VALUE나 빼기 기호 두 개로 결과를 숫자로 바꾸세요: =VALUE(MID(A2,5,4)) 또는 =--MID(A2,5,4).

엑셀에서 특정 문자 앞의 텍스트를 가져오려면 어떻게 하나요?

그 문자의 위치를 찾아 하나를 뺍니다: =LEFT(A2,FIND("-",A2)-1)은 첫 번째 대시 앞의 모든 것을 반환합니다. Microsoft 365에서는 =TEXTBEFORE(A2,"-")도 같은 일을 합니다.

Coddy 프로그래밍 언어 일러스트

Coddy로 코딩 배우기

시작하기