Google Sheets에서 EOMONTH 함수 완전 가이드

EOMONTH란 무엇이고 언제 사용해야 하나요?
EOMONTH는 Google Sheets의 날짜 함수 카테고리에 속하는 내장 함수로, 특정 시작일로부터 앞뒤로 n개월 떨어진 달의 마지막 날짜(월말)를 계산합니다. 예를 들어 시작일이 2022-03-12이고 months에 1을 넣으면 2022-04-30을 반환합니다.
핵심 용도 요약:
- 청구서/송장 마감일 계산
- 구독·계약 만료일 자동화
- 월별 재무 마감 또는 보고서 기준일 생성
- 월 단위 차이 계산(날짜 자체가 아닌 ‘월 말 기준‘)
정의(1줄): EOMONTH는 주어진 시작일을 기준으로 지정한 개월 수만큼 이동한 달의 마지막 날짜를 반환하는 함수입니다.
Important: EOMONTH는 윤년을 고려합니다. 또한 months 인수에 소수(예: 2.7)를 넣으면 소수는 잘려서(내림) 정수 부분만 사용됩니다.
구문
=EOMONTH(start_date, months)구성 요소:
- = : 함수 시작을 알리는 등호
- EOMONTH() : 함수 이름
- start_date : 필수. 날짜(직접 입력 또는 셀 참조). 텍스트형 날짜는 Sheets가 인식하지 못하면 오류가 납니다.
- months : 필수. 시작일 기준으로 이동할 개월 수. 양수는 미래, 음수는 과거, 0은 같은 달의 말일.
예: =EOMONTH(A2, B2) — A2의 날짜를 기준으로 B2만큼 개월을 이동한 달의 마지막 날 반환.
단계별 사용 예시
아래 예시는 dd/mm/yyyy 형식을 사용한 스프레드시트 환경을 전제로 합니다.
.jpg?q=50&fit=crop&w=825&dpr=1.5)
- 결과를 표시할 빈 셀을 선택합니다.
- 수식 입력을 시작합니다: =EOMONTH(
- 시작일을 직접 입력하거나 셀 참조(A2 등)를 추가합니다. 예: A2,
- 이동할 개월 수를 입력(정수 또는 셀 참조 B2) 후 닫는 괄호를 입력합니다.
- Enter를 누르면 해당 셀에 월말 날짜가 표시됩니다.
실사용 예시:
- 현재 달의 마지막 날: =EOMONTH(TODAY(), 0)
- 3개월 뒤의 마지막 날(오늘 기준): =EOMONTH(TODAY(), 3)
- 특정 셀(A2)을 기준으로 1개월 전의 마지막 날: =EOMONTH(A2, -1)
실제 업무 시나리오와 팁
- 청구마감 자동화: 송장 발행일이 A열에 있고 결제 조건이 ‘월말+1개월‘이라면 결제 마감일을 =EOMONTH(A2, 1)로 계산합니다.
- 만료 알림: 구독 만료일을 월말 기준으로 통일하려면 시작일이 있는 셀에 EOMONTH를 적용한 결과를 기준으로 알림 규칙을 만듭니다.
- 월 단위 차이(예: X개월 전 마지막 날과 Y개월 후 마지막 날) 비교를 쉽게 할 수 있습니다.
팁: 날짜가 텍스트로 저장되어 있거나 다른 로케일(예: mm/dd/yyyy vs dd/mm/yyyy) 형식이 섞여 있으면 DATEVALUE 또는 DATE 함수를 사용해 명시적으로 변환하세요.
자주 발생하는 오류와 해결법
- #VALUE! 오류: start_date가 Google Sheets가 인식할 수 없는 텍스트인 경우 발생합니다. 해결: DATEVALUE(A2) 또는 DATE(년,월,일)로 변환.
- 소수 입력 문제: months에 5.7을 넣으면 5로 자동 내림됩니다. 반올림을 원하면 ROUND(months,0) 대신 INT 또는 ROUND 함수를 사용해 사전 처리하세요.
- 시간대·지역 차이로 하루가 어긋나는 경우: 일반적으로 Sheets는 날짜만 처리하므로 시간대 영향은 적지만 데이터 입력 방식에 따라 타임스탬프가 포함된 값은 DATE 또는 INT로 정규화하세요.
언제 EOMONTH가 적합하지 않은가? (대안 및 반례)
- 특정 ‘일자’ 기준(예: 15일마다)을 원할 때: EOMONTH는 월말 전용이므로 EDATE나 DATE·DAY 함수를 조합해 사용하세요.
- 영업일 기준 월말(휴일·주말 제외 월말 직전 영업일)을 원할 때: WORKDAY 또는 NETWORKDAYS와 결합하거나 휴일 목록을 고려한 커스텀 로직이 필요합니다.
- 기간 단위가 개월이 아닌 주·일인 경우: EOMONTH는 적합하지 않으므로 DATE, WEEKDAY, 또는 일수 계산을 사용하세요.
대안 함수 요약:
- EDATE(start_date, months): 시작일 기준으로 정확히 n개월 뒤의 같은 날짜(월말이 아님)를 원할 때 사용.
- DATE(year, month, day): 요소별로 날짜를 구성하거나 복잡한 연산을 직접 구현할 때 유용.
- WORKDAY/NWORKDAY.INTL: 영업일 기준 계산이 필요할 때 사용.
고급: 다른 함수와의 중첩 예제
- 청구일(발행일 A2) 기준으로 결제기한을 ‘발행월 + 1개월의 월말’로 자동 계산:
=EOMONTH(A2, 1)- 오늘 기준으로 다음 분기(3개월 단위)의 마지막 날 찾기:
=EOMONTH(TODAY(), 3 - MOD(MONTH(TODAY()) - 1, 3))설명: MOD로 현재 월의 분기 오프셋을 계산해 다음 분기의 마지막 달로 이동합니다.
- 월말을 기준으로 남은 일수 계산(오늘부터 해당 월 말까지 남은 일수):
=EOMONTH(TODAY(), 0) - TODAY()- 내부 결제 워크플로 예시(영업일 하나 전이 필요할 때):
=WORKDAY(EOMONTH(A2, 0), -1, HolidaysRange)HolidaysRange는 휴일 날짜가 나열된 범위입니다.
체크리스트: 역할별 적용 가이드
재무팀:
- EOMONTH로 월별 마감일·청구기한을 자동화
- DATEVALUE로 외부 CSV 날짜 정규화
영업팀:
- 구독 만료일을 월말로 집계해 고객 연락 스케줄 생성
- CRM에서 날짜 필드를 내보내서 시트에서 EOMONTH 적용
운영/관리:
- 보고서 스케줄링 시 분기/월말 기준 자동화
- 휴일·주말 규칙을 결합한 알림 설정
미니 메소드: EOMONTH를 도입할 때의 단계별 SOP
- 입력 데이터 확인: 날짜 형식과 로케일을 통일한다.
- start_date가 텍스트면 DATEVALUE 또는 DATE로 변환.
- months를 정수로 보장(필요하면 INT/ROUND 처리).
- EOMONTH로 계산한 결과를 포맷(날짜 형식)한다.
- 네트워크드레이/알림과 결합해 자동화 테스트.
간단한 치트시트(자주 쓰는 공식)
- 이번 달 마지막 날: =EOMONTH(TODAY(), 0)
- 지난 달 마지막 날: =EOMONTH(TODAY(), -1)
- 다음 달 마지막 날: =EOMONTH(TODAY(), 1)
- 기준일(A2)에서 6개월 뒤 마지막 날: =EOMONTH(A2, 6)
- 월말 기준 남은 일수: =EOMONTH(TODAY(), 0) - TODAY()
결정 트리(간단한 흐름) — 어떤 함수를 사용할지
flowchart TD
A[날짜 계산 필요?] --> B{월말 기준인가요}
B -- 예 --> C[EOMONTH]
B -- 아니요 --> D{정확히 n개월 뒤 같은 날짜인가}
D -- 예 --> E[EDATE]
D -- 아니요 --> F{영업일 고려?}
F -- 예 --> G[WORKDAY/NWORKDAY.INTL]
F -- 아니요 --> H[DATE/일 단위 계산]1줄 용어집
- EOMONTH: 시작일로부터 n개월 이동한 ‘그 달의 마지막 날짜‘를 반환하는 함수.
- EDATE: 시작일로부터 정확히 n개월 뒤 같은 날짜를 반환하는 함수.
- WORKDAY: 지정한 영업일 기준으로 날짜를 이동하는 함수.
점검 및 테스트 케이스(간단)
- 입력: A2=2022-02-15, months=0 → 결과: 2022-02-28(윤년 여부에 따라 다름)
- 입력: A2=2020-02-10, months=0 → 결과: 2020-02-29(윤년 처리 확인)
- 입력: A2=”03/15/2022”(텍스트), months=1 → DATEVALUE로 변환 필요
Notes: 실제 시트에서는 로케일에 따라 입력과 출력의 서식을 반드시 확인하세요.
요약
- EOMONTH는 월말 날짜를 자동 계산하는 간단하면서도 강력한 도구입니다.
- 청구·만료·월별 보고서 등 반복되는 월말 기반 업무를 자동화할 때 특히 유용합니다.
- 텍스트 날짜, 로케일, 소수 입력 등 몇 가지 주의사항을 확인하면 문제 없이 사용할 수 있습니다.
핵심 요지: EOMONTH를 배우면 월말 기준 날짜 계산이 단순화되어 업무 자동화와 실수 감소에 큰 도움이 됩니다.