
Excel에서 EDATE로 같은 일자의 갱신일을 개월 단위로 계산할 수 있으며, 대상 월에 그 날짜가 없으면 말일 조정이 일어납니다. 계약이 매월 말일 기준이라면 EOMONTH를 선택해야 합니다.
기본 수식은 =EDATE(시작일,갱신개월)입니다. 31일처럼 대상 월에 없는 날짜는 그 달의 마지막 유효일로 내려가므로, 고정 예상일과 PASS 검사 열을 함께 두어야 합니다.
계약 원장에서 먼저 확인할 갱신 규칙
핵심 월별 계약 원장에는 시작일과 갱신 주기만 있고 다음 갱신일을 담당자가 매번 수동으로 입력하고 있어, 2월과 윤년 경계에서 날짜를 잘못 적기 쉽습니다. 먼저 계약서의 기준이 ‘매월 같은 일자’인지 ‘매월 마지막 날’인지 구분해야 합니다.
Microsoft 공식 문서에 따르면 EDATE는 시작일과 개월 수를 인수로 받아 지정한 개월 수 전후의 날짜를 반환합니다. 개월 수가 양수면 미래, 음수면 과거로 이동합니다.
자료: Microsoft Support, EDATE function 및 Add or subtract dates, 2026-09-12 확인
이 글의 수식은 Microsoft 365와 Excel 2024·2021·2019·2016을 기준으로 합니다. 날짜 표시 방식은 운영체제와 지역 설정에 따라 달라도 셀에 저장된 날짜값과 계산 결과는 구분해서 확인할 수 있습니다.
EDATE와 EOMONTH를 선택하는 기준
비교 계약일과 같은 일자를 유지하는 것이 원칙이면 EDATE를 사용합니다. 처음부터 매월 말일이 갱신 기준이라면 시작일의 일자와 무관하게 대상 월의 마지막 날을 반환하는 EOMONTH가 맞습니다.
매월 갱신일을 앞선 결과에서 다시 계산하면 1월 31일→2월 28일→3월 28일처럼 일자가 밀릴 수 있으므로, 최초 시작일과 누적 개월 수로 계산하거나 ‘매월 말일’ 계약에는 EOMONTH를 사용하세요.
자료: Microsoft Support, EDATE function 및 EOMONTH function, 2026-09-12 확인
원장에 EDATE와 검사 수식 넣기
실전 계산 결과만 만들지 말고 사람이 정한 예상갱신일과 대조하는 검사 열까지 구성합니다. 예제의 데이터는 6행에서 시작합니다.
=EDATE(B6,C6)을 입력합니다.=IF(D6=E6,"PASS","FAIL")를 입력합니다.실제 계약 원장을 수정하기 전에는 복사본에서 수식과 날짜 형식을 시험하세요. 결과가 46068 같은 숫자로 보이면 계산 오류가 아니라 날짜 일련번호 표시일 수 있으므로 결과 열에 날짜 형식을 적용합니다.
8건으로 28·29·30·31일 경계 검산하기
아래 예제는 평일형 시작일, 28·29·30·31일, 윤년 2월 29일과 2개월 이동을 섞었습니다. 계산갱신일이 고정 예상갱신일과 같으면 검사 결과는 PASS입니다.
| 계약번호 | 시작일 | 갱신개월 | 계산갱신일 | 예상갱신일 | 검사 |
|---|---|---|---|---|---|
| C-001 | 2026-01-15 | 1개월 | 2026-02-15 | 2026-02-15 | PASS |
| C-002 | 2026-01-28 | 1개월 | 2026-02-28 | 2026-02-28 | PASS |
| C-003 | 2026-01-29 | 1개월 | 2026-02-28 | 2026-02-28 | PASS |
| C-004 | 2026-01-30 | 1개월 | 2026-02-28 | 2026-02-28 | PASS |
| C-005 | 2026-01-31 | 1개월 | 2026-02-28 | 2026-02-28 | PASS |
| C-006 | 2024-01-31 | 1개월 | 2024-02-29 | 2024-02-29 | PASS |
| C-007 | 2024-02-29 | 12개월 | 2025-02-28 | 2025-02-28 | PASS |
| C-008 | 2026-01-31 | 2개월 | 2026-03-31 | 2026-03-31 | PASS |
2026년 1월 29·30·31일에서 1개월을 이동하면 모두 2026년 2월 28일이 됩니다. 윤년인 2024년에는 1월 31일의 한 달 뒤가 2월 29일로 조정됩니다.
C-008처럼 최초 시작일 2026-01-31에 2개월을 직접 더하면 2026-03-31입니다. 이는 2월 28일 결과에 다시 1개월을 더하는 연쇄 계산과 구분해야 합니다.
PASS와 계약 조건으로 갱신일 확정하기
주의 Microsoft 공식 문서상 시작일이 유효한 날짜가 아니면 EDATE는 #VALUE! 오류를 반환합니다.
개월 수에 소수가 들어가면 반올림하지 않고 소수 부분을 버리므로 갱신 주기는 정수로 관리하는 편이 안전합니다.
검사 열이 PASS여도 계약 조건이 ‘매월 말일’인데 EDATE를 골랐다면 함수 선택부터 다시 확인해야 합니다. 수식의 일치와 계약 기준의 일치는 별개의 완료 조건입니다.
* 본문의 기능과 절차는 위 공식 문서와 재현 예제를 기준으로 확인했습니다. 프로그램·버전과 확인일은 해당 설명에 표시했습니다.
'엑셀 실무' 카테고리의 다른 글
| 엑셀 IF·AND로 승인 조건을 모두 만족한 행만 통과 표시하기 (0) | 2026.09.16 |
|---|---|
| 엑셀 CEILING.MATH로 주문 수량을 포장 단위에 맞게 올림하기 (0) | 2026.09.15 |
| 엑셀 SUMPRODUCT로 수량을 반영한 가중평균 단가 계산하기 (0) | 2026.09.13 |
| 엑셀 MROUND로 작업 시간을 15분 단위로 반올림하고 경계값 확인하기 (0) | 2026.09.13 |
| 엑셀 자동 데이터 변환 옵션이 안 보일 때 버전별 대안 (0) | 2026.09.12 |
