엑셀에서 만나이 구하는 방법
엑셀에서 특정 셀에 생년월일(Date형식)이 있다면 이를 바탕으로 오늘의 만 나이(a.k.a. 윤석열나이)를 계산해봅시다. 한국 사람들의 일반적인 나이 계산 방식을 적용하면 만나이 계산은 무척이나 귀찮습니다.
- 올해와 태어난 해의 연도 차이는 기본적으로 한국식 나이가 됩니다.
- 만약 생일을 지났다면 한 살을 더 빼면 만나이가 됩니다.
- 아직 생일을 지나지 않았다면 한 살을 더 빼야합니다.
그런데 '생일을 지났다'는 걸 판단하기가 좀 어렵습니다.
- 오늘의 '월'이 생일의 '월'보다 크면 생일을 지났습니다.
- 오늘의 '월'이 생일의 '월'과 같다면, 오늘의 '일'이 생일의 '일'보다 크거나 같다면 생일을 지난 것으로 봅니다.
따라서 월을 비교하는 조건과 일을 비교하는 조건을 각각 고려해야하기 때문에 상당히 귀찮은 수식을 써야 합니다.
=YEAR(TODAY()) - YEAR(A1) - IF(
OR(MONTH(TODAY()) < MONTH(A1),
AND(MONTH(TODAY()) = MONTH(A1), DAY(TODAY()) < DAY)
),
2, 1
)
하지만, 만나이의 실제 개념과 엑셀에서 날짜를 저장하는 방식을 이해하면 좀 더 쉬운 방법을 사용해서 정확한 만나이를 알아낼 수 있습니다. 만 나이는 0세에서 시작해 태어난 날로부터 1년이 지난 시점에 한 살을 먹는 개념입니다.
엑셀에서의 날짜는 특정한 일자로부터 경과한 일 수로 기록됩니다. 그러니까 우리 눈에는 "2024/12/12" 처럼 형식에 맞춰 표시되지만 실제로는 내부에 그냥 정수값으로 기록되어 있습니다. 즉 날짜는 날짜와 더하고 빼는 것이 가능합니다. 두 날짜를 빼면, 두 날짜 사이의 일 수가 나오게 됩니다.
즉 오늘 날짜에서부터 생년월일의 날짜를 빼고 이것을 1년의 날 수로 나누면 만나이가 되는 것입니다. 그런데 중요한 점은 1년의 날 수가 365가 아니라는 점입니다. 4년에 한 번씩 366일이므로, 그 평균인 365.25를 나누어주어야 합니다. 그렇지 않으면 생에서 경험한 윤달의 횟수가 오차를 더하게 되어 나이가 실제보다 많아질 수 있는 경우가 있습니다.
즉, 정리하면 위의 식은 다음의 식으로 간단하게 바꿀 수 있습니다.
=INT((TODAY() - A1) / 365.25)