본문으로 건너뛰기
ArumSoft Learning
EN

    가장 많이 쓰는 엑셀 함수 20가지 · 20개 중 17번째 튜토리얼

    엑셀 LEFT, RIGHT, MID 함수 사용법

    LEFT, RIGHT, MID로 코드, 학번, 이메일 주소의 앞, 뒤, 가운데에서 글자를 뽑아내고, FIND와 LEN으로 길이가 제각각인 부분도 잘라 내는 방법을 알아봐요.

    난이도
    초급
    Time
    11분 분량
    수정:
    적용 대상:
    Microsoft 365용 Excel, Excel 2021, Excel 2019, 웹용 Excel. TEXTBEFORE와 TEXTAFTER는 Microsoft 365, Excel 2024, 웹용 Excel에서 쓸 수 있어요.
    D2에는 텍스트 2041이 왼쪽으로, D6에는 숫자 415가 오른쪽으로 정렬되어 있어요.
    예시: D2에는 텍스트 2041이 왼쪽으로, D6에는 숫자 415가 오른쪽으로 정렬되어 있어요.

    배울 내용

    • LEFT와 RIGHT로 값의 앞이나 뒤에서 글자 가져오기
    • MID로 값의 가운데에서 글자 가져오기
    • FIND, LEN과 함께 써서 길이가 다른 부분 잘라 내기
    • VALUE로 뽑아낸 숫자를 진짜 숫자로 바꾸기
    • TEXTBEFORE와 TEXTAFTER가 더 간단한 경우 알아보기

    시작하기 전에

    없어요. 처음이어도 괜찮아요.

    함수 연습장

    이 함수들을 실제 시트에서 연습해 보세요

    엑셀처럼 생긴 시트에 수식을 입력하면 계산 과정을 단계별로 보여 줘요. 무료이고 가입도 필요 없어요.

    데이터 하나에 여러 정보가 함께 들어 있는 경우가 많아요. 제품 코드에는 분류, 모델 번호, 색상이 들어 있고, 이메일 주소에는 사용자 이름과 도메인이, 학번에는 학년, 반, 번호가 들어 있죠. LEFT, RIGHT, MID는 그중 필요한 부분만 잘라 내요. 그러면 그 부분만 따로 정렬하고, 필터링하고, 세고, 조회할 수 있어요.

    함수 구조

    =LEFT(text, [num_chars])
    =RIGHT(text, [num_chars])
    =MID(text, start_num, num_chars)
    • text는 글자를 가져올 값이에요. 보통 A2 같은 셀을 넣어요. 숫자도 돼요. 엑셀이 숫자의 자릿수를 글자처럼 읽어요.
    • LEFT와 RIGHT의 num_chars는 넣지 않아도 되고, 가져올 글자 수를 정해요. 생략하면 1글자만 가져와요. 텍스트보다 긴 글자 수를 지정하면 텍스트 전체를 돌려줘요.
    • MID의 start_num은 가져오기 시작할 글자의 위치예요. 텍스트의 첫 글자가 1번이에요.
    • MID의 num_chars는 꼭 넣어야 해요. 텍스트 끝을 넘어가는 글자 수를 지정하면 MID는 끝에서 멈춰요.

    공백, 하이픈, 점도 모두 한 글자로 세요. 코드 KB-2041-BK의 글자 위치는 이래요.

    위치12345678910
    글자KB-2041-BK
    MID 수식 읽는 법
    =MID(A2,4,4)
    1. A2읽을 텍스트: 코드 KB-2041-BK
    2. 4첫 번째 하이픈 바로 다음인 4번째 글자부터 시작해요
    3. 44글자를 가져와요: 2041

    제품 코드에서 부분 잘라 내기

    A열의 코드는 모두 구조가 같아요. 분류를 뜻하는 영문자 두 개, 하이픈, 네 자리 모델 번호, 하이픈, 색상을 뜻하는 영문자 두 개예요. 각 부분이 항상 같은 자리에 있으니, 위치를 한 번만 세고 수식을 아래로 복사하면 돼요.

    1. LEFT로 분류를 가져오세요

      C2를 클릭하고 아래 수식을 입력한 다음 Enter를 누르세요. 앞의 두 글자인 KB가 나와요.

      =LEFT(A2,2)
      ABCDE
      1제품 코드제품명분류모델 번호색상
      2KB-2041-BK키보드KB
      3MS-1187-WH마우스
      4HD-3302-BL헤드셋
      5MN-2750-BK모니터
      6CB-0415-WH케이블
      LEFT가 A2의 앞 두 글자를 가져와요.
    2. RIGHT로 색상을 가져오세요

      E2를 클릭하고 =RIGHT(A2,2)를 입력하세요. 끝에서부터 세어서 BK를 돌려줘요.

    3. MID로 모델 번호를 가져오세요

      D2를 클릭하고 아래 수식을 입력하세요. 4번째 글자부터 네 글자를 가져와서 2041을 돌려줘요.

      =MID(A2,4,4)
      ABCDE
      1제품 코드제품명분류모델 번호색상
      2KB-2041-BK키보드KB=MID(A2,4,4)BK
      3MS-1187-WH마우스
      4HD-3302-BL헤드셋
      5MN-2750-BK모니터
      6CB-0415-WH케이블
      MID가 A2의 4번째 글자부터 네 글자를 가져와요.
    4. 수식을 아래로 채우세요

      C2:E2를 선택하고 채우기 핸들(fill handle)을 6행까지 끌어내리세요. 행마다 자기 코드를 나눠요. D2의 2041이 셀 왼쪽에 붙어 있는 걸 보세요. LEFT, RIGHT, MID가 돌려주는 값은 숫자처럼 보여도 항상 텍스트예요.

      ABCDE
      1제품 코드제품명분류모델 번호색상
      2KB-2041-BK키보드KB2041BK
      3MS-1187-WH마우스
      4HD-3302-BL헤드셋
      5MN-2750-BK모니터
      2행을 분류, 모델 번호, 색상으로 나눈 모습이에요. MID의 결과는 텍스트라서 D2가 왼쪽으로 정렬돼요.

    FIND로 길이가 다른 부분 잘라 내기

    위치를 세는 방법은 모든 값의 구조가 같을 때만 통해요. 이메일 주소는 사용자 이름의 길이가 제각각이라서, 먼저 @가 어디 있는지 찾아야 해요. FIND는 텍스트 안에서 어떤 텍스트가 몇 번째에 있는지 돌려줘요.

    =FIND("@",A2)

    sales.team@example.com에서는 11을 돌려줘요. 이 위치만 알면 양쪽을 모두 잘라 낼 수 있어요.

    • 사용자 이름은 @ 바로 앞에서 끝나니까, 위치에서 1을 뺀 만큼 LEFT로 가져와요. =LEFT(A2,B2-1)은 sales.team을 돌려줘요.
    • 도메인은 @ 바로 다음에서 시작하니까, 위치에 1을 더한 곳부터 MID로 가져와요. 글자 수로는 LEN(A2)(A2의 글자 수)를 넣으면 항상 충분해요. 어차피 MID는 텍스트 끝에서 멈추거든요. =MID(A2,B2+1,LEN(A2))는 example.com을 돌려줘요.
    ABCD
    1이메일@ 위치사용자 이름도메인
    2sales.team@example.com11sales.teamexample.com
    3jkim@school.example.org5jkimschool.example.org
    4orders@shop.example.net7ordersshop.example.net
    B열에서 주소마다 @의 위치를 찾고, C열과 D열에서 그 앞뒤를 잘라 내요. 사용자 이름의 길이가 달라서 행마다 위치도 달라요.

    수식이 제대로 동작하면 도우미 열 없이 FIND를 수식 안에 넣어도 돼요.

    =LEFT(A2,FIND("@",A2)-1)

    @ 뒤에 몇 글자가 있는지 계산하면 RIGHT로도 도메인을 가져올 수 있어요. =RIGHT(A2,LEN(A2)-FIND("@",A2))는 example.com을 돌려줘요. 22글자에서 11을 빼면 11글자가 남기 때문이에요.

    SEARCH는 FIND와 같지만 두 가지가 달라요. 대소문자를 구분하지 않고, 와일드카드 *와 ?를 쓸 수 있어요. FIND는 대소문자를 구분해요. 둘 다 찾는 텍스트가 없으면 #VALUE!를 돌려줘요.

    실제 활용 사례

    고객 관리

    영수증에 전화번호 가리기

    영수증에는 고객이 자기 번호인지 알아볼 수 있을 만큼만 전화번호를 보여 주고, 전체 번호는 숨기고 싶어요.

    ABC
    1고객전화번호영수증 표시
    2김민준010-1234-5678010-****-5678
    3이서연010-9876-5432010-****-5432
    4박지호010-5555-0101010-****-0101
    LEFT가 앞자리와 하이픈을, RIGHT가 마지막 네 자리를 남기고, 가운데는 별표로 바꿔요.
    =LEFT(B2,4)&"****-"&RIGHT(B2,4)

    C2는 010-****-5678을 돌려줘요. 앞의 네 글자(010과 하이픈), 직접 입력한 텍스트 ****-, 마지막 네 글자를 이은 결과예요.

    학교

    학번 나누기

    학번은 다섯 자리로, 학년 한 자리, 반 두 자리, 번호 두 자리로 되어 있어요. 10317은 1학년 3반 17번이에요.

    ABCDE
    1학번이름학년반번호
    210317김서윤1317
    320514이준호2514
    431102박하린3112
    LEFT, MID, RIGHT가 학번을 나누고, VALUE가 각 부분을 숫자로 바꿔요.
    =VALUE(MID(A2,2,2))

    MID(A2,2,2)는 텍스트 03을 돌려주고, VALUE가 이를 숫자 3으로 바꿔요. 그래서 반 열을 숫자로 정렬하고 필터링할 수 있어요. 학년은 =VALUE(LEFT(A2,1)), 번호는 =VALUE(RIGHT(A2,2))로 구해요. 학번은 숫자지만, 엑셀이 숫자의 자릿수를 텍스트로 읽기 때문에 수식이 그대로 동작해요.

    가계부

    은행 거래 내역의 날짜 고치기

    은행에서 내려받은 거래 내역에 날짜가 20260302 같은 여덟 자리 텍스트로 들어 있어요. 엑셀이 이걸 날짜로 인식하지 못해서 날짜순 정렬이나 월별 묶기를 할 수 없어요.

    ABC
    1거래일(텍스트)내용날짜
    220260302마트2026-03-02
    320260315교통카드 충전2026-03-15
    420260328카페2026-03-28
    LEFT, MID, RIGHT가 연, 월, 일을 꺼내고, DATE가 그 값으로 진짜 날짜를 만들어요.
    =DATE(LEFT(A2,4),MID(A2,5,2),RIGHT(A2,2))

    LEFT는 2026, MID는 03, RIGHT는 02를 돌려줘요. DATE가 이 값들을 숫자로 받아서 2026년 3월 2일 날짜를 돌려주고, 그 뒤로는 원하는 날짜 서식을 적용할 수 있어요.

    결과를 숫자로 바꾸기

    LEFT, RIGHT, MID는 모든 글자가 숫자여도 항상 텍스트를 돌려줘요. 숫자처럼 보이는 텍스트는 티 나지 않게 문제를 일으켜요. SUM은 이런 값을 건너뛰고(D2:D6의 모델 번호를 더하면 0이 나와요), 진짜 숫자가 들어 있는 열에서 이 값을 조회하면 #N/A가 나와요.

    수식을 VALUE로 감싸면 숫자가 돼요.

    =VALUE(MID(A6,4,4))

    케이블의 코드 CB-0415-WH에서 MID는 텍스트 0415를 돌려주고, VALUE가 이를 숫자 415로 바꿔요. 다른 숫자와 마찬가지로 앞의 0은 사라져요. 수량이 아니라 코드라서 0이 중요하다면 텍스트로 두세요.

    ABCDE
    1제품 코드제품명분류모델 번호색상
    2KB-2041-BK키보드KB2041BK
    3MS-1187-WH마우스
    4HD-3302-BL헤드셋
    5MN-2750-BK모니터
    6CB-0415-WH케이블415
    D2에는 텍스트 2041이 왼쪽으로, D6에는 숫자 415가 오른쪽으로 정렬되어 있어요.

    다른 사람의 수식에서는 빼기 기호 두 개를 쓰는 짧은 방법도 자주 보여요. =--MID(A2,4,4)는 숫자 2041을 돌려줘요. 첫 번째 빼기가 텍스트를 음수로 바꾸고, 두 번째 빼기가 다시 양수로 돌려놓는 거예요. 0을 더해도(=MID(A2,4,4)+0) 결과는 같아요.

    Microsoft 365의 TEXTBEFORE와 TEXTAFTER

    Microsoft 365, Excel 2024, 웹용 Excel에서는 위치를 계산하지 않고 구분 기호를 기준으로 텍스트를 자르는 새 함수 두 개를 쓸 수 있어요.

    가져올 값LEFT, RIGHT, MIDTEXTBEFORE, TEXTAFTER
    @ 앞의 사용자 이름=LEFT(A2,FIND("@",A2)-1)=TEXTBEFORE(A2,"@")
    @ 뒤의 도메인=MID(A2,FIND("@",A2)+1,LEN(A2))=TEXTAFTER(A2,"@")
    마지막 하이픈 뒤의 색상=RIGHT(A2,2)=TEXTAFTER(A2,"-",-1)

    세 번째 인수를 음수로 쓰면 끝에서부터 세요. 그래서 -1은 "마지막 하이픈 뒤"라는 뜻이에요. Excel 2021 이하에서도 열어야 하는 통합 문서라면 LEFT, RIGHT, MID를 쓰세요. 이전 버전에서는 새 함수가 #NAME?으로 표시돼요.

    자주 하는 실수

    • num_chars 빠뜨리기. =LEFT(A2)는 기본값이 한 글자라서 K만 돌려줘요. 원하는 글자 수를 넣으세요.
    • 구분 기호 앞뒤로 한 글자 어긋나기. =LEFT(A2,FIND("@",A2))는 @까지 포함한 sales.team@을 돌려줘요. 구분 기호 앞부분은 1을 빼고, 뒷부분은 1을 더하세요.
    • 구분 기호가 없는 값. 주소에 @가 없으면 FIND가 #VALUE!를 돌려주고, 수식 전체도 #VALUE!가 돼요. 구분 기호가 빠진 값이 있을 수 있다면 IFERROR로 감싸세요.
    • 텍스트로 남은 숫자. 뽑아낸 숫자는 텍스트라서 SUM이 무시하고, 진짜 숫자를 대상으로 한 조회도 실패해요. VALUE나 --를 쓰세요.
    • 여분의 공백 때문에 밀린 위치. A2에 " KB-2041-BK"처럼 앞에 공백이 있으면 =LEFT(A2,2)는 " K"를 돌려줘요. 먼저 TRIM으로 정리하세요. =LEFT(TRIM(A2),2)처럼요.
    • 날짜에 LEFT 쓰기. 날짜는 속으로는 일련번호라서, 2026년 3월 15일에 =LEFT(A2,4)를 쓰면 2026이 아니라 4609가 나와요. 날짜에는 YEAR, MONTH, DAY나 TEXT를 쓰세요.

    연습

    연습

    제품 코드 나누기

    아래 시트를 사용하세요. 강조된 셀을 클릭하고, 시트 위의 입력줄에 수식을 입력한 다음 Enter를 누르세요. 그다음 엑셀에서 직접 해 보세요.

    1. A열에 이메일 주소 다섯 개(실제 주소든 지어낸 주소든 괜찮아요)를 입력하세요.
    2. B열에 FIND로 @의 위치를 구하세요.
    3. C열에 LEFT로 사용자 이름을, D열에 MID로 도메인을 구하세요.
    4. Microsoft 365를 쓴다면 TEXTBEFORE와 TEXTAFTER의 결과와 비교해 보세요.

    직접 해 보기4개 중 0개 완료

    1. C2에 A2 코드의 앞 두 글자(분류)를 구해 보세요.
    2. E2에 A2 코드의 마지막 두 글자(색상)를 구해 보세요.
    3. D2에 A2 코드 가운데에 있는 네 자리 모델 번호를 구해 보세요.
    4. D6에 케이블의 모델 번호를 텍스트가 아닌 진짜 숫자로 구해 보세요.

    점선으로 표시된 셀을 클릭하고, 입력줄에 수식을 쓴 다음 Enter를 누르세요.

    ABCDE
    1제품 코드제품명분류모델 번호색상
    2KB-2041-BK키보드
    3MS-1187-WH마우스
    4HD-3302-BL헤드셋
    5MN-2750-BK모니터
    6CB-0415-WH케이블

    관련 자료

    도움이 되었나요? 틀린 부분을 발견하셨나요? 피드백 보내기 · admin@arumsoft.com