Microsoft Excel 실무에서 바로 사용하는 날짜 함수 완벽정리

이 가이드는 Microsoft Excel 실무에서 바로 사용하는 날짜 함수 사용 방법에 대해 설명합니다.

직장인이라면 Excel 작업 시 보통 더하기 빼기와 같은 기본 함수를 사용할 때도 있지만, 막상 실무에 들어가면 숫자보다 날짜를 계산해야 할 일이 더 많습니다.

예를 들어 계약서를 정리하며 계약 시작일과 만료일 또는 신입 직원의 수습 기간이 언제 끝나는지, 매달 반복되는 작업들은 달력을 넘겨가며 확인하는 것이 아니라 대부분 Excel 함수로 계산하게 됩니다.

그러나 Excel 문서 작업이 처음인 초보 입장에서는 이러한 날짜 계산이 쉽지 않습니다.

실무에서 가장 많이 사용하는 DATE, EDATE, EOMONTH, DATEIF 함수를 중심으로, 언제 어떤 함수를 사용해야 하는지 정리하는 시간을 가져보도록 하겠습니다.

Microsoft Excel 실무에서 꼭 알아야 할 날짜 함수

날짜 함수를 시작하기 전에 한 가지, 날짜는 숫자 형식으로 저장하는 기본 개념을 짚고 넘어가는 것이 좋습니다.

Excel에서는 1900년 1월 1일 날짜를 숫자 1로 시작해서, 하루가 지날 때마다 1씩 증가하는 방식입니다.

예를 들어 2025년 1월 1일 날짜는 Excel 내부적으로 45,658이라는 숫자로 저장됩니다.

날짜 함수를 입력했을 때 셀에 날짜 대신 이러한 숫자만 표시될 때가 있는데, 이는 오류가 아니라 셀의 서식이 날짜 형식으로 설정되지 않아서 발생하는 것입니다.

이럴 때는 날짜로 표시하려는 셀을 선택하고 메뉴의 [홈] 탭에서 “표시 형식 > 간단한 날짜” 옵션을 선택하면 정상적으로 날짜가 표시됩니다.

Excel에서 날짜 계산 시 단순히 더하기, 빼기 연산으로도 가능

이 구조 덕분에 흔히 사용하는 빼기, 더하기 연산만 해도 두 날짜 사이의 일수를 구할 수도 있습니다.

예를 들어 B3 셀에 시작일, C3 셀에 종료일이 있다고 가정했을 때 일수 계산을 하고 싶다면, 다음과 같이 간단한 방법으로 기간을 계산할 수 있습니다.

=C3-B3
날짜 함수 사용하지 않고도 연산으로 기간 계산이 가능

수식 입력창에 일반적인 빼기 연산처럼 두 날짜를 계산하면 시작일 및 종료일 사이의 기간을 구할 수 있습니다.

🔦 참고 : 계산된 일수에 "일" 텍스트를 추가하고 싶다면, 셀 서식에서 사용자 지정 범주 선택 후 #,###"일" 형식을 지정하면 자동으로 일수 뒤에 텍스트 "일"이 표시됩니다.

01 DAYS 함수

DAYS 함수는 종료일에서 시작일을 뺀 일 수를 구하는 것으로, 단순히 더하기, 빼기 연산 방식을 사용할 수도 있지만 비교적 간단하게 함수를 사용하여 시작일 및 종료일 사이의 기간을 계산할 수 있습니다.

DAYS 날짜 함수 사용 화면

DAYS 날짜 함수 사용 방법은 다음과 같습니다.

=DAYS(end_date, start_date)
시작, 종료일 사이의 기간 계산 화면

즉, 시작일 셀이 B3, 종료일 셀이 C3에 있다면 다음과 같이 수식 입력창에 입력하고 Enter 키를 누릅니다.

=DAYS(C3,B3)

02 EDATE 날짜 함수

EDATE는 ‘Elapsed Date(경과된 날짜)’의 약자입니다. 시작일로부터 지정한 개월 수만큼 경과한 날짜를 반환합니다. 날짜(일)를 그대로 유지하면서 월만 이동 시키는 것이 특징입니다.

EDATE 날짜 함수 사용 화면

EDATE 날짜 함수 사용 방법은 다음과 같습니다.

=EDATE(start_date, months)

기준 셀이 B6, 3개월 후 날짜를 표시하고 싶다면 다음과 같이 수식 입력창에 입력하고 Enter 키를 누릅니다.

=EDATE(B6,3)

개월 수는 정수만 입력할 수 있으며, 소수점이 있는 경우 소수점 이하는 무시되고 정수 부분만 적용됩니다.

몇 개월 전/후 같은 날짜 계산 시 사용

기준 셀이 B6, 3개월 전 날짜를 표시하고 싶다면 다음과 같이 수식 입력창에 입력하고 Enter 키를 누릅니다.

=EDATE(B6,-3)

STEP 01. EDATE 함수 사용 예시

예를 들어 B6 셀 ‘2025-01-31’ 날짜 기준으로 EDATE 함수 사용 시 다음과 같은 결과를 확인할 수 있습니다.

  • =EDATE(B6,3) : 2025-04-30 / 3개월 후 (31일이 없으므로 말일 30일 날짜로 자동 조정)
  • =EDATE(B6,-1) : 2024-12-31 / 1개월 전
  • =EDATE(B6,12) : 2026-01-31 / 12개월 후

STEP 02. EDATE 함수 활용 사례

계약 직원 1년 계약의 만료일 계산 화면
  • 계약 직원 1년 계약의 만료일 계산 : =EDATE(B3, 12)
2년 계약 만료일 계산 화면
  • 계약 직원 2년 계약의 만료일 계산 : =EDATE(B6, 24)
  • 계약 직원 1년 계약의 만료일 계산 : =EDATE(B6, 12)
  • 신입 사원 6개월 수습 종료일 : =EDATE(B6, 6)
  • 어음 또는 채권 만기일 계산 등
EDATE 날짜 함수 사용하여 계약 만료일까지 남은 수 계산 화면
  • 1년 계약 직원 만료일까지 남은 일 수 : =EDATE(B3,12)-TODAY()
🔦 참고 : TODAY() 함수는 오늘 날짜를 자동으로 불러오는데 사용됩니다. 즉, 특정 날짜가 아닌 항상 오늘 날짜를 기준으로 계산할 때 유용합니다.

02 EOMONTH 날짜 함수

EOMONTH는 ‘End Of Month(월의 끝)’의 약자입니다. 시작일로부터 지정한 개월 수가 지난 달의 마지막 날을 반환하여 표시합니다.

특히 윤년과 월별 일수 차이를 자동으로 처리해주기 때문에 월말 기준 날짜 계산에 유용합니다.

EDATE 사용 수습 종료일 계산 화면

EOMONTH 날짜 함수 사용 방법은 다음과 같습니다.

=EOMONTH(start_date, months)

기준 셀이 B3, 3개월 후 말일 날짜는 다음과 같이 수식 입력창에 입력하고 Enter 키를 누릅니다.

=EDATE(B6,3)

STEP 01. EOMONTH 함수 사용 예시

예를 들어 B6 셀 ‘2025-01-15’ 날짜 기준으로 EOMONTH 함수 사용 시 다음 결과를 확인할 수 있습니다.

  • =EMONTH(B6,0) : 2025-01-31 / 기준 날짜에 해당하는 달의 말일
  • =EMONTH(B6,1) : 2025-02-28 / 1개월 후 말일 (윤년이 아닌 경우)
  • =EMONTH(B6,-1) : 2024-12-31 / 1개월 전 말일

STEP 02. EOMONTH 함수 활용 사례

EOMONTH 날짜 함수 사용 화면
  • 현재 날짜 기준 다음 달 1일 : =EMONTH(TODAY(),0)+1
  • 현재 날짜 기준 이번 달 말일 : =EMONTH(TODAY(),0)

STEP 03. EOMONTH vs EDATE 함수 비교

EDATE 및 EOMONTH 함수를 언제 사용할지 혼동된다면, 두 함수의 차이를 한 번에 정리하면 다음과 같습니다.

3개월 후 같은 날짜 계산 : =EDATE(start_date, month)
3개월 후 말일 : =EOMONTH(start_date, month)

즉, 같은 날짜를 구하고 싶다면 EDATE 함수를, 말일 날짜를 구하고 싶다면 EOMONTH 함수를 사용합니다.

03 DATEDIF 함수

DATEDIF 함수는 시작일과 종료일 사이의 경과 기간을 연도, 월, 일 단위로 계산하는 함수입니다.

원래 Lotus 1-2-3 시절부터 사용되던 함수로, 호환성을 위해 Excel에서도 지원되고 있습니다.

이 때문에 함수 목록에 표시되지 않고, 수식 입력 시 인수 자동완성도 지원되지 않으므로 지접 입력해야 합니다.

STEP 01. DATEDIF 함수 단위의 종류

  • Y : 만 연도 수 (근속 1년)
  • M : 만 개월 수 (근속 12개월)
  • D : 총 일수 (근속 365일)
  • YM : 연도 제외한 나머지 개월 수 (2년 3개월에서 ‘3’)
  • YD : 연도 제외한 나머지 일 수 (2년 10일에서 ’10’)
  • MD : 월을 제외한 나머지 일 수 (버그 발생할 가능성이 높아 권장하지 않음)
⚠️ 주의 : "MD" 단위는 사용하지 않는 것이 좋습니다. Microsoft 공식 문서에서도 "MD" 인수는 특정 조건에서 음수나 부정확한 결과를 반환할 수 있다고 명시하고 있습니다. 예를 들어, 2022-01-31에서 2022-03-01 사이의 "MD" 값을 계산하면 -2라는 잘못된 결과가 나옵니다. 잔여 일수가 필요한 경우에는 "MD" 대신 수작업 수식을 사용하는 것이 좋습니다.

STEP 02. DATEDIF 함수 사용 예시

입사일 A2셀(2022-03-15), 오늘 날짜는 TODAY() 함수로 자동 참조한다고 가정합니다.

연도 : =DATEDIF(A2, TODAY(), “Y”) → 결과 3
개월 : =DATEDIF(A2, TODAY(), “YM”) → 결과 2 (3년 2개월에서 ‘2’)
결합 : =DATEDIF(A2,TODAY(),”Y”)&”년 “&DATEDIF(A2,TODAY(),”YM”)&”개월” → 결과 “3년 2개월”

STEP 03. DATEDIF 함수 활용 사례

시작일 셀 B3, 종료일 셀 B5 기준으로 다양한 DATEDIF 함수 활용 사례를 살펴보면 다음과 같습니다.

DATEDIF 날짜 함수 사용 두 날짜 사이 만 연수 계산 화면

두 날짜 사이의 만 연수를 구하려면 다음과 같이 수식 입력창에 입력하고 Enter 키를 누릅니다.

=DATEDIF(B3,B5,"Y")

실제 두 날짜 사이의 일 수만 놓고 보면 830일 입니다. 그러나 “Y” 단위 적용으로 2년으로 표시됩니다.

두 날짜 사이 총 일 수 계산 화면

두 날짜 사이의 총 일 수를 구하려면 다음과 같이 수식 입력창에 입력하고 Enter 키를 누릅니다.

=DATEDIF(B3,B5,"D")
두 날짜 사이 만 개월 수

두 날짜 사이의 만 개월 수를 구하려면 다음과 같이 수식 입력창에 입력하고 Enter 키를 누릅니다.

=DATEDIF(B3,B5,"M")
DATEDIF 함수 사용 오늘까지 근속 기간 계산 화면

오늘까지 근속 기간을 구하려면 다음과 같이 수식 입력창에 입력하고 Enter 키를 누릅니다.

=DATEDIF(B3,TODAY(),"Y")&"년 "&DATEDIF(B3,TODAY(),"YM")&"개월"
DATEDIF 날짜 함수 사용하여 만 나이 계산 화면

만 나이를 구하려면 다음과 같이 수식 입력창에 입력하고 Enter 키를 누릅니다.

=DATEDIF(B3,TODAY(),"Y")

시작일 날짜를 기준으로 만 나이가 계산되었으므로, “0”세로 표시됩니다.

DATEDIF 함수에서 직접 날짜 입력하여 생일 구하는 화면

기준일 셀 지정 대신 특정 날짜(생년월일)을 직접 수식 입력창에 입력하고 Enter 키를 누릅니다.

=DATEDIF("2018-10-31",TODAY(),"Y")

2018년 10월 31일 태어난 사람의 만 나이는 “7”세로 표시되는 것을 확인할 수 있습니다.

04 Excel에서 날짜 계산 시 자주 발생하는 문제와 해결 방법

날짜 함수를 사용하여 계산할 때 날짜가 아닌 숫자로만 표시된다면, 기본적으로 셀 서식에서 표시되는 형식이 잘 못 지정되었거나 내부적으로 처리하는 숫자가 표시되는 경우입니다.

앞서 언급한 것처럼 EDATE, EOMONTH 등의 함수를 입력했는데 날짜 대신 45398 같은 숫자가 나온다면, 셀 서식 문제로 다음과 같이 간단히 해결할 수 있습니다.

  • 해당 셀 선택 후 [홈] 탭 → [표시 형식] 드롭다운 → ‘간단한 날짜’ 선택

또한 EOMONTH나 EDATE에서 “#NUM!” 오류가 나오는 경우는 주로 텍스트로 입력된 날짜이거나, DATEDIF에서 시작일 날짜가 종료일 보다 나중인 경우에 발생할 수 있습니다.

특히 DATEDIF 함수는 시작일 날짜가 종료일 보다 작아야 하며, 반대로 입력하면 #NUM! 오류가 발생합니다.

마치며

Excel에서 날짜를 다루는 일이 복잡하게 느껴졌다면, 오늘 정리한 날짜 함수만 기억하면 됩니다.

  • EDATE: 몇 개월 후/전의 같은 날짜
  • EOMONTH: 몇 개월 후/전의 월말 날짜
  • DATEDIF: 두 날짜 사이의 경과 기간 (년/월/일)
  • DATE: 원하는 날짜를 직접 만들거나 다른 함수와 조합

이 함수들은 단독으로 쓰기보다는 서로 조합하거나 TODAY() 함수와 함께 사용할 때 진가를 발휘합니다.

그동안 달력을 넘겨가며 날짜를 일일이 손으로 계산했다면, 이제는 날짜 함수 하나로 해결해 보시기 바랍니다.

🔗 Microsoft Excel 임의 데이터 집합을 만드는 방법
🔗 Microsoft Excel 텍스트 정렬, 양쪽 맞춤 채우기 방법
🔗 Microsoft Excel 휴대전화 번호 일괄 변경 방법 (숫자 형식)

Leave a Comment