- 최초 작성일: 2001-05-24
- 최종 수정일: 2026-09-29
- 조회수: 28 회
- 작성자: 권현욱 (엑셀러)
- 강의 제목: 십이간지 알아내기
들어가기 전에
오래 전 엑셀 파일로 진행하던 강의를 웹 글로 복원한 것이라, "버튼을 눌러보세요"처럼 엑셀에서 직접 조작하라는 표현이 남아 있을 수 있습니다. 결과는 본문의 그림이나 표로 확인하실 수 있으며, 현재와 맞지 않는 내용은 보완하되 전반적인 스타일은 당시의 갬성(?)을 유지했습니다.
질문 하나
학교 엑셀 숙제거든요. 딴 건 했는데 띠 나타내는 건 해결을 못하고 있어서... 부탁 드리겠어요.
박창준님의 답변
다른 고수님들의 답변은 어떻게 나오실런지 모르겠지만 제가 해 본 것은 A1 셀에 주민등록번호 700101-1111111가 있다면 수식을, =CHOOSE(ROUND(MOD(LEFT(A1,2),12),0)+1,"쥐","소","호랑이", "토끼","용","말","뱀","양","원숭이","닭","개","돼지") 이렇게 하면 될 것 같은데...(12간지 순서가 맞나???) 도움이 되셨길 바랍니다.
십이간지 알아내기
핵심 요약
- 출생연도의 나머지를 MOD 함수로 구하고 CHOOSE 함수의 인덱스로 사용하면 띠를 계산할 수 있습니다.
- 십이간지의 순서를 올바르게 배열해 연도에 대응하는 동물 이름을 반환하는 것이 핵심입니다.
- MID와 MOD를 추가로 조합하면 천간과 지지를 함께 표시해 간지와 띠를 한 번에 나타낼 수 있습니다.
십이간지를 구하는 방법은 박창준님이 사용하신 방법처럼 Choose 함수를 사용하시면 되겠습니다. 다만 십이간지의 순서가 약간 이상하군요. ^^ 아래의 콤보박스에서 년도를 선택해 보세요.
년도 선택 82
| =INDEX(A253:A352,B26) | ="선택하신 년도는 "&CHOOSE(ROUND(MOD(년도,12),0)+1,"원숭이","닭","개","돼지","쥐","소","호랑이","토끼","용","뱀","말","양")&" 띠 입니다!" |
위의 빨간 셀에는 이런 수식이 사용되었습니다.
="선택하신 년도는 "&CHOOSE(ROUND(MOD(년도,12),0)+1,"원숭이","닭","개","돼지","쥐","소","호랑이","토끼","용","뱀","말","양")&" 띠 입니다!"
이상 끝! 하려니까 Exceller가 한 것은 하나도 없네요. ^^ 이대로 마치면 양심의 가책을 느끼게 되니까... 아래와 같이 약간 응용을 해 보았습니다.
="선택하신 년도는 "&MID("경신임계갑을병정무기",MOD(년도,10)+1,1)&MID("신유술해자축인묘진사오미",MOD(년도,12)+1,1)&"년 "&CHOOSE(ROUND(MOD(년도,12),0)+1,"원숭이","닭","개","돼지","쥐","소","호랑이","토끼","용","뱀","말","양")&" 띠 입니다!"
수식은 약간 더 깁니다만 모르는 함수는 아마 하나도 없을 것입니다.
="선택하신 년도는 "&MID("경신임계갑을병정무기",MOD(년도,10)+1,1)&MID("신유술해자축인묘진사오미",MOD(년도,12)+1,1)&"년 "& CHOOSE(ROUND(MOD(년도,12),0)+1,"원숭이","닭","개","돼지","쥐","소", "호랑이","토끼","용","뱀","말","양")&" 띠 입니다!"
잘 분석해 보시고 모르는 부분이 있으면 질문하세요.
다음 시간에...
정리 — 십이간지 알아내기
| 구분 | 내용 |
|---|---|
| 핵심 함수 | CHOOSE, MOD, ROUND (필요 시 MID) |
| 원리 | 년도를 12로 나눈 나머지에 1을 더해 CHOOSE의 인덱스로 사용 |
| 동물 순서 | 원숭이, 닭, 개, 돼지, 쥐, 소, 호랑이, 토끼, 용, 뱀, 말, 양 |
| 응용 | MID와 MOD로 천간과 지지를 구해 간지와 띠를 함께 표시 |
자주 묻는 질문 (FAQ)
Q1. 띠는 어떤 함수로 구하나요?
년도를 12로 나눈 나머지에 1을 더한 값을 CHOOSE 함수의 인덱스로 사용해 12가지 동물 이름 중 하나를 선택합니다.
Q2. 동물 이름의 나열 순서가 중요한가요?
네, 나머지 값에 대응하는 순서대로 동물을 나열해야 정확한 띠가 나옵니다. 이 강좌의 수식에서는 원숭이부터 시작하는 순서를 사용합니다.
Q3. 간지까지 함께 표시할 수 있나요?
MID 함수로 천간과 지지 문자열에서 글자를 하나씩 뽑아 연결하면 됩니다. 천간은 년도를 10으로, 지지는 12로 나눈 나머지를 사용합니다.
마치며
CHOOSE와 MOD 함수만 알면 띠와 간지를 손쉽게 알아낼 수 있습니다. VBA에 대한 기초 지식을 공부하실 분은 아이엑셀러 닷컴 사이트 상단 메뉴에서 [Excel 강의] - [Excel 입문]을 먼저 보시면 이해하기 쉽습니다.