- 최초 작성일: 2025-01-28
- 최종 수정일: 2026-09-23
- 조회수: 41 회
- 작성자: 권현욱 (엑셀러)
- 강의 제목: 등록번호로 성별 알아내기
들어가기 전에
오래 전 엑셀 파일로 진행하던 강의를 웹 글로 복원한 것이라, "버튼을 눌러보세요"처럼 엑셀에서 직접 조작하라는 표현이 남아 있을 수 있습니다. 결과는 본문의 그림이나 표로 확인하실 수 있으며, 현재와 맞지 않는 내용은 보완하되 전반적인 스타일은 당시의 갬성(?)을 유지했습니다.
주민등록번호의 뒷부분 첫자리(7번째) 숫자를 보면 성별을 구분할 수 있다는 것은 상식에도 못 낍니다. 1900년대 출생자는 남자가 1, 여자가 2이고, 2000년 이후 출생자는 남자가 3, 여자가 4입니다.
그런데 뒷부분 첫자리 숫자가 5나 6도 있고, 심지어는 7과 8도 있다는 사실을 아시나요?
외국인의 경우가 이에 해당합니다. 외국인이 무슨 주민등록이 있느냐고요? 입국일로부터 90일을 초과하여 국내에 체류하는 외국인들은 '외국인 등록번호'를 부여하며, 주민등록번호와 형식이 같습니다.
그러니까 모든 경우의 수는 8가지가 되는군요. 이번 시간에는 주민등록번호나 외국인등록번호에서 성별을 알아내는 다양한 방법에 대해 살펴보겠습니다.
본 예제에서 사용된 주민/외국인등록번호는 가상의 사례입니다. 혹여 누군가의 것과 일치하더라도 어디까지나 우연의 일치임을 미리 밝힙니다. ^^
주민/외국인 등록번호로 성별 알아내는 방법 총정리
핵심 요약: 등록번호 뒷자리로 성별 판별하는 다섯 가지 수식
등록번호 뒷자리 첫 숫자는 홀수면 남자, 짝수면 여자입니다. 이 규칙을 IF 중첩, IFS, CHOOSE, IF+OR, IF+ISODD/ISEVEN 등 다섯 가지 방식으로 구현할 수 있습니다.
- 방법 1: IF 중첩(+ MID/VALUE) — 가장 기본적이지만 수식이 길어짐
- 방법 2: IFS(엑셀 2019+) — IF 반복 없이 조건을 나열
- 방법 3~4: CHOOSE, IF+OR — 구조적이고 간결
- 방법 5: IF+ISODD/ISEVEN — 홀짝 판정으로 가장 짧게 처리
방법 1: IF + 텍스트 함수 사용
먼저, 가장 만만한(?) IF 함수를 써서 해결해 보죠. MID 함수를 이용하여 번호 뒷자리 첫 번째 수를 구한 다음 중첩 IF 문을 작성합니다. VALUE는 숫자 형식의 문자열 데이터를 온전한 숫자로 바꿔주는 함수입니다.
C3:
=IF(VALUE(MID(B3,8,1))=1,"남", IF(VALUE(MID(B3,8,1))=2,"여",
IF(VALUE(MID(B3,8,1))=3,"남", IF(VALUE(MID(B3,8,1))=4,"여",
IF(VALUE(MID(B3,8,1))=5,"남",IF(VALUE(MID(B3,8,1))=6,"여",
IF(VALUE(MID(B3,8,1))=7,"남","여")))))))
수식이 마냥 길어지는 게 부담스럽다면 적당한 셀(E3)에 뒷자리 첫 번째 수를 구하고 수식에 적용하면 길이가 대폭 줄어듭니다.
=IF(E3=1,"남",IF(E3=2,"여",IF(E3=3,"남",IF(E3=4,"여",
IF(E3=5,"남",IF(E3=6,"여",IF(E3=7,"남","여")))))))
지금부터는 E3 셀에 뒷자리 첫 번째 수가 구해져있다고 가정하고 진행하겠습니다.
=VALUE(MID(B3,8,1))
방법 2: IFS 함수 사용 (엑셀 2019)
엑셀 2019버전을 사용한다면 IFS 함수를 사용해 보세요. IF를 반복해서 적지 않아도 되기 때문에 수식의 길이가 대폭 줄어듭니다.
C3:
=IFS(E3=1,"남",E3=2,"여",E3=3,"남",E3=4,"여",
E3=5,"남",E3=6,"여",E3=7,"남",TRUE,"여")
IFS 함수의 맨 마지막 조건을 적기 전에 TRUE를 적은 후 처리 조건을 기재한 점을 눈여겨 보시기 바랍니다.
방법 3: CHOOSE 함수 사용
CHOOSE 함수를 이용하면 더욱 구조적이고 이해하기 쉬운 수식이 될 수 있습니다.
C3:
=CHOOSE(E3,"남","여","남","여","남","여","남","여")
방법 4: IF + 논리 함수 사용
논리 함수의 하나인 OR를 IF와 조합하여 해결할 수도 있습니다.
C3:
=IF(OR(E3=1,E3=3,E3=5,E3=7),"남","여")
방법 5: IF + 정보 함수 사용
정보 함수의 하나인 ISODD(홀수 여부 판단), ISEVEN(짝수 여부 판단) 함수를 이용하면 지정한 숫자가 홀수인지 짝수인지 여부를 알 수 있습니다. 이 특성을 이용하여 IF 함수와 조합해서 사용합니다.
C3:
=IF(ISODD(E3),"남","여") 또는
=IF(ISEVEN(E3),"여","남")
일단 이 정도 방법들이 떠오르는군요. 다른 방법도 있을 수 있으므로 연구해 보시기 바랍니다.
참고: 이미지에 대하여
이 글은 원래 네이버 포스트에 게재되었던 글로, 네이버 포스트 서비스 종료로 네이버 블로그로 옮기는 과정에서 원본 이미지가 소실되었습니다. 위 이미지는 본문 설명을 바탕으로 재구성한 예시 화면이며, 실제 엑셀 화면과 세부 디자인은 다를 수 있습니다.
정리 — 다섯 가지 성별 판별 수식 비교
| 방법 | 함수 | 특징 |
|---|---|---|
| 1. IF 중첩 | IF, MID, VALUE | 가장 기본적, 수식이 길어짐 |
| 2. IFS | IFS (2019+) | 중첩 없이 조건 나열 |
| 3. CHOOSE | CHOOSE | 구조적이고 이해하기 쉬움 |
| 4. IF+OR | IF, OR | 홀수 조건을 하나로 묶음 |
| 5. IF+ISODD/ISEVEN | IF, ISODD, ISEVEN | 가장 짧고 직관적 |
자주 묻는 질문 (FAQ)
Q1. 주민등록번호 뒷자리 첫 숫자로 어떻게 성별을 알 수 있나요?
1900년대 출생 내국인은 남자 1, 여자 2이고, 2000년 이후 출생 내국인은 남자 3, 여자 4입니다. 외국인등록번호는 1900년대 출생이 남자 5, 여자 6이며, 2000년 이후 출생은 남자 7, 여자 8입니다. 결국 홀수면 남자, 짝수면 여자입니다.
Q2. 가장 간단한 수식은 무엇인가요?
홀수·짝수 판정 함수인 ISODD 또는 ISEVEN을 IF와 함께 쓰는 방법이 가장 짧습니다. 예: =IF(ISODD(E3),"남","여").
Q3. IFS 함수는 엑셀 모든 버전에서 쓸 수 있나요?
아니요. IFS 함수는 엑셀 2019 버전부터 제공됩니다. 그 이전 버전에서는 IF를 중첩하거나 CHOOSE, OR 등 다른 함수로 대체해야 합니다.
마치며
VBA에 대한 기초 지식을 공부하실 분은 아이엑셀러 닷컴 사이트 상단 메뉴에서 [Excel 강의] - [Excel 입문]을 먼저 보시면 이해하기 쉽습니다.