구글 스프레드시트에서 날짜 계산은 비즈니스 환경에서 자주 활용되는 중요한
기능입니다. 특히 월 단위로 날짜를 이동해야 하는 업무가 많은데, 이럴 때 EDATE
함수가 큰 도움이 됩니다. EDATE 함수는 특정 날짜에서 원하는 개월 수만큼 이동한
날짜를 간편하게 계산해 주어 월별 보고서 작성, 계약 만료일 계산, 프로젝트 일정
관리 등 다양한 업무에 유용하게 활용할 수 있습니다. 이 포스팅에서는 EDATE
함수의 기본 개념부터 실무에서 활용할 수 있는 다양한 예시까지 상세히
알아보겠습니다.
1. EDATE 함수 소개
EDATE 함수는 지정된 날짜에서 특정 개월 수만큼 이동한 날짜를 반환하는
함수입니다. 기준 날짜에서 몇 개월 전 또는 몇 개월 후의 날짜가 필요할 때
사용합니다. 양수 값을 입력하면 미래 날짜를, 음수 값을 입력하면 과거 날짜를
계산할 수 있어 다양한 날짜 계산 작업을 간편하게 처리할 수 있습니다.
알아두세요
EDATE 함수는 단순히 날짜에 일정 일수를 더하는 것과 다릅니다. 월마다 일수가
다르기 때문에 단순 일수 계산으로는 정확한 '몇 개월 후' 날짜를 구하기
어렵습니다. EDATE 함수는 이러한 월별 일수 차이를 자동으로 고려하여 정확한
날짜를 계산해 줍니다.
2. EDATE 함수 기본 형태
EDATE 함수의 기본 형태는 다음과 같습니다:
EDATE(시작일, 개월수)
이 함수는 두 개의 필수 매개변수를 가지고 있습니다. '시작일'은 기준이 되는
날짜이며, '개월수'는 시작일로부터 이동할 개월 수를 의미합니다. 양수를 입력하면
미래 날짜를, 음수를 입력하면 과거 날짜를 계산합니다.
3. EDATE 함수 매개변수
EDATE 함수에는 두 가지 매개변수가 사용됩니다. 각 매개변수의 특성과 사용법은
다음과 같습니다:
매개변수
|
필수/선택
|
데이터 타입
|
설명
|
시작일
|
필수
|
날짜
|
결과를 계산할 기준 날짜입니다. 날짜 셀 참조, DATE 함수, DATEVALUE
함수, 또는 날짜 일련번호를 사용할 수 있습니다.
|
개월수
|
필수
|
숫자
|
시작일에 적용할 개월 수입니다. 양수는 미래 날짜, 음수는 과거 날짜를
계산합니다. 소수점은 무시됩니다.
|
팁
'시작일' 매개변수에는 다양한 형태의 날짜 입력이 가능합니다. 셀 참조뿐만
아니라 DATE(2025, 5, 13)와 같은 함수, 또는 직접적인 날짜 일련번호(예:
45499)를 입력할 수도 있습니다. 다만, 텍스트 형식의 날짜("2025-05-13")는
DATEVALUE 함수를 통해 변환해야 합니다.
4. 실습용 샘플 데이터
EDATE 함수를 실습하기 위한 샘플 데이터를 준비했습니다. 아래의 데이터를
스프레드시트에 입력하고 함께 예제를 따라해 보세요. 버튼을 클릭하여
스프레드시트가 나타나면 사본저장을 하여 사용하세요.
A
|
B
|
C
|
D
|
E
|
1
|
계약명
|
계약일
|
계약기간(월)
|
만료일
|
2 |
A사 서비스 계약
|
2025-01-15
|
12 |
|
3 |
B사 라이선스
|
2024-12-01
|
24 |
|
4 |
C사 유지보수
|
2025-03-10
|
6 |
|
5 |
D사 호스팅
|
2025-02-28
|
36 |
|
6 |
E사 컨설팅
|
2025-04-15
|
3 |
|
7 |
F사 장비 렌탈
|
2025-05-31
|
18 |
|
5. EDATE 함수 기본 사용 예시
이제 EDATE 함수의 기본적인 사용법을 알아보겠습니다. 다음 네 가지 예시를 통해
함수의 활용법을 자세히 살펴보겠습니다.
예시 1: 계약 만료일 계산하기
앞서 준비한 샘플 데이터를 활용하여 계약 만료일을 계산해 보겠습니다. E2 셀에
다음 공식을 입력합니다:
=EDATE(C2, D2)
이 공식은 C2 셀의 계약일(2025-01-15)에서 D2 셀에 지정된 계약기간(12개월)만큼
이동한 날짜를 계산합니다. 결과값은 2026-01-15입니다. 이 공식을 E2부터 E7까지
복사하면 모든 계약의 만료일을 한 번에 계산할 수 있습니다.
|
기본 사용 예시1 실행 결과
|
예시 2: 특정 날짜에서 3개월 전 날짜 구하기
현재 날짜로부터 3개월 전 날짜를 계산하는 방법입니다. 새로운 셀에 다음 공식을
입력합니다:
=EDATE(TODAY(), -3)
TODAY() 함수는 현재 날짜를 반환하고, EDATE 함수는 그 날짜에서 3개월 전 날짜를
계산합니다. 예를 들어, 오늘이 2025년 5월 13일이라면 결과값은 2025년 2월 13일이
됩니다.
|
기본 사용 예시2 실행 결과
|
예시 3: DATE 함수와 함께 사용하기
EDATE 함수는 DATE 함수와 함께 사용하여 특정 날짜를 직접 지정할 수 있습니다.
다음 공식을 통해 2025년 1월 1일로부터 6개월 후 날짜를 계산해 보겠습니다:
=EDATE(DATE(2025, 1, 1), 6)
이 공식은 2025년 1월 1일에서 6개월 후인 2025년 7월 1일을 반환합니다.
|
기본 사용 예시3 실행 결과
|
예시 4: 월말 처리를 고려한 EDATE 함수 사용
EDATE 함수는 월의 말일을 어떻게 처리하는지 알아보겠습니다. 월말인 1월 31일에서
1개월 후를 계산해 봅시다:
=EDATE(DATE(2025, 1, 31), 1)
이 공식은 2025년 1월 31일에서 1개월 후인 2025년 2월 28일을 반환합니다. 2월은
28일(2025년은 평년)까지만 있으므로, EDATE 함수는 자동으로 해당 월의 마지막
날짜를 선택합니다.
|
기본 사용 예시4 실행 결과
|
알아두세요
EDATE 함수는 월말 날짜를 처리할 때 항상 해당 월의 실제 마지막 날짜를
사용합니다. 31일이 있는 달에서 시작해 30일까지만 있는 달로 이동하면 자동으로
30일을 반환합니다. 반대로 30일이 있는 달에서 31일이 있는 달로 이동하면
31일을 반환하지 않고 원래 날짜(30일)를 유지합니다.
6. EDATE 함수 고급 사용 예시
이번에는 EDATE 함수를 활용한 더 복잡한 예시를 살펴보겠습니다. 실무에서 자주
마주하게 되는 상황들을 해결하는 방법을 알아보겠습니다.
고급 예시 : 계약 갱신 알림 시스템 만들기
계약 만료 3개월 전에 알림을 표시하는 시스템을 만들어 보겠습니다. 샘플 데이터의
F열에 다음 공식을 입력합니다:
=IF(TODAY() >= EDATE(E2, -3), "갱신 필요", "")
이 공식은 현재 날짜가 계약 만료일(E2)의 3개월 전 이후인지 확인합니다. 만약
그렇다면 "갱신 필요"라는 텍스트를 표시하고, 그렇지 않으면 빈 셀로 남겨둡니다.
F2부터 F7까지 이 공식을 복사하여 모든 계약에 대한 갱신 알림을 설정할 수
있습니다.
|
고급 사용 예시 실행 결과 |
7. EDATE 함수 사용 시 주의사항
EDATE 함수를 효과적으로 활용하기 위해 알아두어야 할 몇 가지 주의사항을
살펴보겠습니다.
월말 날짜 처리 특성
주의
EDATE 함수는 월말 날짜를 특별하게 처리합니다. 1월 31일에서 1개월 후 날짜를
계산할 때, 2월에는 31일이 없으므로 자동으로 2월의 마지막 날인 28일(평년)
또는 29일(윤년)을 반환합니다. 이러한 특성은 대부분의 비즈니스 로직에
적합하지만, 특정 금융 계약이나 정확한 일수 계산이 필요한 경우에는 추가적인
고려가 필요합니다.
특히 월말 날짜(28일, 29일, 30일, 31일)에서 특정 개월 수를 더하거나 뺄 때
예상과 다른 결과가 나올 수 있습니다. 예를 들어, 2025년 1월 31일에서 2개월 후는
2025년 3월 31일이 맞지만, 2025년 1월 31일에서 1개월 후는 2025년 2월 28일이
됩니다(2025년은 평년). 이러한 동작을 정확히 이해하고 사용해야 합니다.
문자열 형식 날짜 인식 불가
EDATE 함수는 문자열 형태의 날짜를 자동으로 인식하지 못하는 특징이 있습니다.
"2025-05-13"과 같은 텍스트 형식의 날짜를 직접 EDATE 함수에 입력하면 오류가
발생합니다. 이러한 문제를 해결하기 위해서는 DATEVALUE 함수를 사용하여 문자열을
날짜 값으로 변환해야 합니다.
EDATE(DATEVALUE("2025-05-13"), 1)
물론 가장 안전한 방법은 DATE 함수를 사용하여 날짜를 구성하는 것입니다:
EDATE(DATE(2025, 5, 13), 1)
소수점 무시 현상
알아두세요
EDATE 함수는 '개월수' 매개변수의 소수점 이하 값을 무시합니다. EDATE(A1,
2.7)과 EDATE(A1, 2)는 동일한 결과를 반환합니다. 만약 정확한 일수 단위까지
계산이 필요하다면, EDATE 함수로 월 이동 후에 추가로 일수를 더하는 방식을
사용해야 합니다.
예를 들어, 정확히 2.5개월 후 날짜를 계산하려면 다음과 같이 할 수 있습니다:
=EDATE(A1, 2) + 15 // 2개월 + 15일 (30일의 절반)
날짜 일련번호 입력 시 주의점
EDATE 함수는, 구글 스프레드시트의 다른 날짜 함수들과 마찬가지로, 날짜를
일련번호로 처리합니다. 직접 날짜 일련번호를 입력할 때는 특히 주의해야
합니다. 예를 들어, EDATE(45499, 1)과 같이 사용할 수 있는데, 여기서 45499는
2025년 5월 13일의 일련번호입니다. 그러나 10/10/2000과 같은 형태를 직접
입력하면, 이는 날짜가 아닌 단순 나눗셈 연산(10÷10÷2000)으로 해석되어
0.0005라는 매우 작은 숫자가 됩니다. 따라서 EDATE(10/10/2000, 1)은 실제로
EDATE(0.0005, 1)로 계산되어 의도하지 않은 결과를 반환합니다.
복합 날짜 계산 시 수식 순서
팁
여러 날짜 함수를 조합하여 복잡한 날짜 계산을 수행할 때는 수식의 평가 순서에
주의해야 합니다. 예를 들어, EOMONTH 함수로 월말을 찾은 후 EDATE로 월을
이동하는 것과, EDATE로 월을 이동한 후 EOMONTH로 월말을 찾는 것은 서로 다른
결과를 가져올 수 있습니다.
다음 두 수식은 다른 결과를 반환할 수 있습니다:
=EDATE(EOMONTH(A1, 0), 1) // A1이 속한 월의 마지막 날짜에서 1개월 후
=EOMONTH(EDATE(A1, 1), 0) // A1에서 1개월 후 날짜가 속한 월의 마지막 날짜
특히 월말 날짜를 다룰 때 이러한 차이를 이해하고 있어야 합니다.
EDATE 함수는 월 단위 날짜 계산을 간편하게 해주는 강력한 도구입니다. 계약
관리, 프로젝트 계획, 재무 일정 수립 등 다양한 업무 영역에서 활용할 수
있으며, 특히 월마다 일수가 다른 상황에서도 정확한 날짜를 계산해 줍니다. 이
함수의 기본 개념을 이해하고 주의사항을 염두에 두면 스프레드시트 작업의
효율성을 크게 높일 수 있습니다.