본문 바로가기
카테고리 없음

LEFT, RIGHT, MID: 주민번호로 생년월일과 성별만 쏙 뽑아내기

by story00-1 2026. 1. 12.

안녕하세요! 엑셀로 '칼퇴'를 꿈꾸는 직장인 여러분, 오피스 파트너입니다.

지난 시간에는 날짜와 시간을 다루는 TODAY, NOW 함수에 대해 알아봤습니다. 오늘은 엑셀 데이터 가공의 꽃이라 불리는 '텍스트 나누기' 기술을 배워보겠습니다.

업무를 하다 보면 이런 난감한 상황을 마주하게 됩니다.
"주민등록번호가 적힌 엑셀 파일을 받았는데, 여기서 생년월일과 성별만 따로 표로 만들어오래..."

설마 이걸 보면서 하나하나 타이핑하고 계신가요? 데이터가 10명이라면 가능하겠지만, 1,000명이라면요? 오늘 소개할 LEFT, RIGHT, MID 함수 3형제만 있으면, 아무리 긴 문자열이라도 원하는 부분만 수술하듯 정교하게 도려낼 수 있습니다.

가장 대표적인 예제인 '주민등록번호'를 가지고 이 세 가지 함수를 완벽하게 마스터해 보겠습니다.

LEFT, RIGHT, MID: 주민번호로 생년월일과 성별만 쏙 뽑아내기
LEFT, RIGHT, MID: 주민번호로 생년월일과 성별만 쏙 뽑아내기

1. LEFT 함수: 왼쪽에서부터 가져와라 (생년월일)

LEFT 함수는 문자열의 가장 왼쪽(시작점)부터 내가 지정한 개수만큼 글자를 가져옵니다. 우리가 글을 읽는 방향과 같아서 가장 이해하기 쉽습니다.

1-1. 사용 공식

=LEFT(text, [num_chars])
* 해석: =LEFT(가져올 셀, 왼쪽부터 몇 글자?)

1-2. 실전: 생년월일 6자리 추출하기

예를 들어 "901225-1234567"이라는 주민번호가 A1 셀에 있다고 가정해 봅시다. 여기서 앞의 6자리(901225)만 필요합니다.

  1. 생년월일을 넣을 셀을 클릭합니다.
  2. =LEFT( 를 입력하고 주민번호 셀(A1)을 클릭합니다.
  3. 콤마(,)를 찍고 6을 입력합니다. (왼쪽에서 6글자가 필요하니까요.)
  4. 괄호를 닫고 엔터!
=LEFT(A1, 6)

결과: 901225

아주 간단하죠? 만약 이름이 "홍길동(대리)"라고 되어있을 때 이름 세 글자만 빼오고 싶다면 =LEFT(셀, 3)을 쓰면 됩니다.


2. MID 함수: 중간을 공략하라 (성별 코드)

오늘의 주인공입니다. LEFT와 RIGHT는 양 끝만 건드릴 수 있지만, MID(Middle) 함수는 문자열의 허리, 즉 중간에 있는 글자를 핀셋으로 집어내듯 가져올 수 있습니다.

주민등록번호 뒷자리의 첫 번째 숫자(1, 2, 3, 4)가 성별을 결정한다는 사실, 알고 계시죠? 이 숫자는 문자열의 딱 중간에 끼어있습니다. 이럴 때 MID를 씁니다.

2-1. 사용 공식 (조금 중요!)

=MID(text, start_num, num_chars)
* 해석: =MID(가져올 셀, 몇 번째부터?, 몇 개를?)

인수가 3개라서 헷갈릴 수 있습니다. "어디서(text), 몇 번째부터 시작해서(start), 몇 개 가져올래(num)?" 순서만 기억하세요.

2-2. 실전: 성별 숫자 1개만 뽑기

다시 "901225-1234567" 예제입니다. 우리가 필요한 건 하이픈(-) 바로 뒤에 있는 숫자 '1'입니다.

  • Step 1: '1'이 앞에서부터 몇 번째에 있는지 세어봅니다.
    9(1)-0(2)-1(3)-2(4)-2(5)-5(6)-하이픈(7)-1(8)
    네, 8번째에 있군요! (하이픈도 글자 수에 포함된다는 것, 별표 다섯 개! ⭐⭐⭐⭐⭐)
  • Step 2: 거기서부터 몇 글자가 필요하죠? 딱 1글자입니다.

그럼 수식은 이렇게 됩니다.

=MID(A1, 8, 1)

결과: 1

이제 이 결과값 1을 가지고 IF 함수를 섞어서 "남자", "여자"로 변환하면 완벽한 성별 데이터가 됩니다.


3. RIGHT 함수: 끝에서부터 챙겨라 (보안/뒷자리)

RIGHT 함수는 LEFT와 반대입니다. 문자열의 오른쪽 끝에서부터 글자를 가져옵니다. 주로 전화번호 뒷자리나, 주민번호 뒤 7자리를 가져올 때 사용합니다.

3-1. 사용 공식

=RIGHT(text, [num_chars])
* 해석: =RIGHT(가져올 셀, 오른쪽부터 몇 글자?)

3-2. 실전: 뒷자리 7개 가져오기

"901225-1234567"에서 개인정보 마스킹(*) 처리를 위해 뒤의 7자리(1234567)만 따로 떼어내고 싶다면?

=RIGHT(A1, 7)

결과: 1234567


4. 한눈에 보는 종합 예제

위에서 배운 3가지 함수를 하나의 표로 정리했습니다. 이 표를 캡처해 두시면 업무 하실 때 컨닝 페이퍼로 쓰기 딱 좋습니다.

함수 수식 결과값
LEFT =LEFT("901225-1234567", 6) 901225
MID =MID("901225-1234567", 8, 1) 1
RIGHT =RIGHT("901225-1234567", 7) 1234567

5. 주의사항: 텍스트냐 숫자냐, 그것이 문제로다

이 함수들을 사용할 때 꼭 알아두셔야 할 점이 있습니다. LEFT, RIGHT, MID 함수로 추출한 결과물은 엑셀이 '문자(Text)'로 인식합니다.

예를 들어 MID 함수로 숫자 '1'을 뽑아냈다고 해도, 엑셀은 이것을 숫자 1이 아닌 글자 "1"로 생각합니다. 그래서 가끔 SUM 같은 계산 함수가 먹히지 않거나, VLOOKUP을 할 때 오류가 날 수 있습니다.

💡 추출한 값을 숫자로 바꾸려면?

수식 뒤에 *1 을 붙여주세요.
예: =MID(A1, 8, 1)*1

문자에 1을 곱하면 엑셀이 강제로 숫자로 변환시켜 줍니다. 실무에서 정말 유용한 팁이니 꼭 기억하세요!


오늘은 데이터를 내 마음대로 자르고 붙일 수 있는 LEFT, RIGHT, MID 함수에 대해 알아보았습니다.

이 세 가지만 자유자재로 다뤄도 엑셀 업무의 50%는 해결된 것이나 다름없습니다. 이제 주민번호뿐만 아니라 사번, 품번, 전화번호 등 어떤 긴 문자열이 와도 겁내지 말고 핀셋처럼 정보를 쏙쏙 뽑아내 보세요.

다음 시간에는 "이 글자는 총 몇 글자일까?"를 세어주는 LEN 함수와, 지저분한 공백을 없애주는 TRIM 함수에 대해 다뤄보겠습니다. 텍스트 가공의 마침표를 찍어드릴 테니 기대해 주세요!

여러분의 칼퇴를 응원합니다. 도움이 되셨다면 공감 버튼 꾸욱 부탁드립니다!