시작일과 더하거나 빼고 싶은 년·월·주·일을 입력하세요. ‘며칠 후’와 ‘며칠 전’의 날짜를 요일과 함께 한꺼번에 계산합니다. 주말을 빼고 세고 싶을 때는 맨 아래 영업일 칸에만 일수를 넣으세요.
이 페이지에서 할 수 있는 것
- 시작일에 년·월·주·일을 더한 ‘며칠 후·몇 개월 후’의 날짜와 뺀 ‘며칠 전·몇 개월 전’의 날짜를 요일과 함께 한꺼번에 계산합니다
- ‘오늘부터 90일 후는 언제?’, ‘마감 2주 전은 며칠?’, ‘1년 6개월 후는?’ 같은 날짜 계산에 그대로 쓸 수 있습니다
- 주말을 빼고 세는 ‘며칠 영업일 후·전’의 날짜도 계산할 수 있습니다(공휴일은 고려하지 않습니다)
- ‘1월 31일의 1개월 후는 언제?’ 같은 월말 처리의 쉬운 해설과 Excel·Google 스프레드시트(EDATE·WORKDAY 함수)·Python용 복사해서 쓰는 수식도 이 페이지에 정리되어 있습니다
이 계산은 어디에 쓰일까요?
청구서의 ‘발행일로부터 30일 이내에 지급해 주세요’는 바로 ‘며칠 후’ 계산입니다. 2026년 4월 15일 발행이라면 30일 후인 5월 15일(금요일)이 기일이 됩니다.
‘월말 마감, 익월 말 지급’ 같은 결제 조건을 확인할 때도 ‘몇 개월 후’ 계산을 그대로 쓸 수 있습니다. 기일을 하루만 넘겨도 신용에 영향을 주는 돈 문제이므로, 손가락으로 세지 말고 계산으로 확인하면 안심입니다.
온라인 쇼핑몰의 ‘5영업일 이내 발송’, 은행이나 관공서의 ‘처리에 며칠 영업일이 걸립니다’는 주말을 건너뛰며 세는 영업일 계산입니다. 금요일(2026년 7월 3일)에 주문했다면 5영업일 후는 주말 2일을 건너뛰어 다음 주 금요일(7월 10일)입니다.
다만 실제 기한에는 공휴일이나 회사별 휴무일도 영향을 주므로, 이 계산기의 결과(주말만 제외)를 기준으로 삼되 그사이에 공휴일이 없는지 달력으로 확인하세요.
‘2주 후 재진’, ‘4주 간격으로 다음 접종’ 같은 의료 일정은 주 단위로 안내되는 경우가 많고, 2주 후 = 14일 후이므로 시작일과 같은 요일이 됩니다(2026년 6월 1일이 월요일이면 2주 후인 6월 15일도 월요일).
‘28일분 약이 언제 떨어질까’, ‘다음 예약을 언제 잡으면 될까’를 날짜로 알아 두면 약을 빠뜨리거나 예약을 놓치는 일을 막을 수 있습니다.
한국 기준으로 주택 임차인이 계약을 갱신하지 않으려면 임대차 기간이 끝나기 2개월 전까지 집주인에게 알려야 합니다(주택임대차보호법 제6조). 계약 만료일이 2026년 4월 30일이라면 2개월 전은 2월 28일입니다(4월 30일과 같은 ‘30일’이 2월에는 없으므로 말일로 맞춘 날짜).
묵시적으로 갱신된 계약을 임차인이 해지할 때는 집주인이 통지를 받은 날부터 3개월이 지나야 효력이 생기므로(같은 법 제6조의2), ‘3개월 후’ 계산이 그대로 쓰입니다. 기한을 세는 방법은 계약서와 법령의 정함이 우선하므로, 정확한 기한은 계약서나 전문가에게 확인하고 여유 있게 움직이세요.
출산 예정일은 마지막 월경 시작일부터 280일 후(임신 40주 0일)를 기준으로 하는 방법(네겔레 법칙)이 널리 쓰입니다. 예를 들어 2026년 1월 1일이 기준이라면 280일 후는 10월 8일입니다.
이것은 월경 주기를 28일로 가정한 통계적인 기준이며, 실제 예정일은 초음파 검사 등을 바탕으로 의사가 판단합니다. ‘지금 임신 몇 주인가’를 날짜로 세는 감각을 익히는 데 이 계산이 큰 도움이 됩니다.
‘시험일 30일 전부터 기출문제를 시작한다’, ‘원서는 시험일 며칠 전까지’ 같은 역산은 ‘며칠 전’ 계산입니다. 2026년 11월 15일이 시험일이라면 그 30일 전은 10월 16일입니다.
발표회·결혼식·이사 같은 큰 일정에서도 ‘2주 전까지 ○○’, ‘전날까지 ○○’처럼 마감을 날짜로 바꿔 달력에 넣어 두면 준비를 빠뜨리지 않습니다.
공식
용어·기호 해설
기호
| \(D_0\) | 디 영 | 시작일(기준이 되는 날짜)입니다. 오른쪽 아래의 작은 0은 ‘0번째 = 출발점’이라는 뜻의 첨자입니다. |
| \(D_1\), \(D_2\) | 디 일, 디 이 | 계산 결과의 날짜입니다. \(D_1\)이 \(n\)일 후, \(D_2\)가 \(n\)일 전의 날짜입니다. |
| \(n\) | 엔 | 더하거나 빼는 일수입니다(예: 90일 후라면 \(n = 90\)). |
| \(w\), \(d\) | 더블유, 디 | 주 수(\(w\))와 주로 묶이지 않는 남는 일수(\(d\))입니다. ‘3주 4일’이라면 \(w = 3\), \(d = 4\)입니다. |
| \(N\) | 엔(대문자) | 주와 일을 한꺼번에 일수로 바꾼 ‘더할 일수’입니다. \(N = 7w + d\)로 구합니다. |
| \(y\), \(m\) | 와이, 엠 | 더하거나 빼는 햇수(\(y\))와 개월 수(\(m\))입니다. ‘1년 2개월’이라면 \(y = 1\), \(m = 2\)입니다. |
| \(T\) | 티 | 년과 월을 한꺼번에 개월 수로 바꾼 ‘더할 개월 수의 합계’입니다. \(T = 12y + m\)으로 구합니다. |
| \(b\) | 비 | 영업일 수(주말을 빼고 센 일수)입니다. 영업일을 뜻하는 영어 business day의 첫 글자입니다. |
| \(C\), \(W\) | 시, 더블유(대문자) | 영업일로 셀 때 달력상 실제로 나아가는 일수(\(C\))와 그사이에 끼는 주말의 날수(\(W\))입니다. \(C = b + W\)의 관계가 있습니다. |
용어
| 해당일 | 다음 달·다음 해의 ‘같은 날짜’를 말합니다. 1월 15일의 1개월 후 해당일은 2월 15일입니다. ‘몇 개월 후’, ‘몇 년 후’는 이 해당일로 셉니다(민법의 기간 계산과 같은 생각). 1월 31일처럼 같은 날짜가 없는 달에서는 그달의 말일로 대신합니다. |
| 말일 조정 | ‘몇 개월 후’의 해당일이 없는 달(예: 1월 31일의 1개월 후인 ‘2월 31일’)에서 대신 그달의 말일(2월 28일·29일)을 답으로 하는 것입니다. 이 계산기도 Excel의 EDATE 함수도 이 방식입니다. |
| 윤년 | 2월 29일이 있는 해입니다. 원칙적으로 4년에 한 번이지만, 100으로 나누어떨어지는 해는 평년, 400으로 나누어떨어지는 해는 윤년입니다(2100년은 평년, 2000년은 윤년). 2월 29일의 1년 후는 다음 해에 2월 29일이 없으므로 말일 조정으로 2월 28일이 됩니다. |
| 영업일 | 회사나 관공서가 일하는 날입니다. 이 계산기에서는 ‘주말을 뺀 날’을 영업일로 세며 공휴일은 고려하지 않습니다(설날·추석처럼 해마다 날짜가 바뀌는 공휴일과 대체공휴일이 있기 때문입니다). 계약서 등에서는 ‘영업일’의 정의를 따로 정해 두기도 하므로 정식 기한은 그 정의를 확인하세요. |
| 일련번호 | Excel 등이 날짜를 관리하려고 쓰는 번호입니다. 1900년 1월 1일을 1로 하여 하루마다 1씩 늘어납니다. 날짜가 번호이기 때문에 ‘날짜 + 일수’를 단순한 덧셈으로 계산할 수 있습니다. |
| 큰달 | 31일까지 있는 달(1·3·5·7·8·10·12월)입니다. 30일까지인 작은달과 구별합니다. |
| 작은달 | 30일까지인 달(4·6·9·11월)입니다. 2월만 28일(윤년은 29일)까지입니다. 주먹을 쥐고 손등의 튀어나온 마디를 큰달, 들어간 곳을 작은달로 세는 방법이 잘 알려져 있습니다. |
먼저 알아 두면 좋은 내용
이 페이지의 계산을 ‘뜻을 알고’ 쓸 수 있도록, 먼저 알아 두면 좋은 내용을 정리했습니다.
막히면 이 표의 내용으로 돌아가 복습하는 것이 지름길입니다.
| 달력의 원리(초등학교 2학년, 7~8세) |
|
| 받아올림·받아내림이 있는 덧셈과 뺄셈(초등학교 2학년, 7~8세) |
|
| 곱셈(초등학교 2~3학년, 7~9세) |
|
| 나머지가 있는 나눗셈과 주기(초등학교 3학년, 8~9세) |
|
Excel로 계산하는 방법
| 시작일 | 2026-01-15 |
| 일수 n | 10 |
| n일 후의 날짜 | =B1+B2 |
| n일 전의 날짜 | =B1-B2 |
| 시작일 | 2026-05-20 |
| 주 수 w | 3 |
| 일수 d | 4 |
| 더할 일수 N | =B2*7+B3 |
| N일 후의 날짜 | =B1+B4 |
| N일 전의 날짜 | =B1-B4 |
| 시작일 | 2026-05-10 |
| 햇수 y | 1 |
| 개월 수 m | 2 |
| y년 m개월 후의 날짜 | =EDATE(B1,B2*12+B3) |
| y년 m개월 전의 날짜 | =EDATE(B1,-(B2*12+B3)) |
| 시작일 | 2026-07-03 |
| 영업일 수 b | 5 |
| b영업일 후의 날짜 | =WORKDAY(B1,B2) |
| b영업일 전의 날짜 | =WORKDAY(B1,-B2) |
| 시작일 | 2026-05-10 |
| 햇수 | 1 |
| 개월 수 | 2 |
| 주 수 | 3 |
| 일수 | 4 |
| 한꺼번에 더한 날짜 | =EDATE(B1,B2*12+B3)+B4*7+B5 |
| 한꺼번에 뺀 날짜 | =EDATE(B1,-(B2*12+B3))-B4*7-B5 |
첫 번째 표처럼 일수의 덧셈·뺄셈은 ‘=날짜+일수’라는 단순한 덧셈으로 계산할 수 있습니다(첫 번째 표의 답은 1월 25일과 1월 5일). 개월 수의 덧셈·뺄셈은 EDATE 함수(=EDATE(시작일, 개월 수))로 하며, 같은 날짜가 없는 달에서 말일로 맞추는 점까지 이 계산기와 같습니다. 과거로 되돌릴 때는 개월 수를 마이너스로 합니다.
영업일은 WORKDAY 함수(=WORKDAY(시작일, 영업일 수))로 주말을 빼고 셉니다(네 번째 표의 답은 7월 10일). 세 번째 인수에 공휴일 날짜 목록을 넘기면 공휴일도 뺄 수 있으므로, 공휴일까지 빼고 세고 싶을 때는 그쪽을 쓰세요.
다섯 번째 표가 이 계산기의 입력과 같은 형태이며, 답은 2027년 8월 4일입니다. 한 가지 주의: 이 계산기는 ‘년 → 월’ 순서로 더하는 데 비해 EDATE는 한꺼번에 더하므로, 윤일(2월 29일)이 얽힌 드문 경우에 하루 어긋날 수 있습니다(예: 2024-02-29의 1년 1개월 후는 이 계산기에서는 2025-03-28, =EDATE(B1,13)에서는 2025-03-29).
Google 스프레드시트로 계산하는 방법
| 시작일 | 2026-01-15 |
| 일수 n | 10 |
| n일 후의 날짜 | =B1+B2 |
| n일 전의 날짜 | =B1-B2 |
| 시작일 | 2026-05-20 |
| 주 수 w | 3 |
| 일수 d | 4 |
| 더할 일수 N | =B2*7+B3 |
| N일 후의 날짜 | =B1+B4 |
| N일 전의 날짜 | =B1-B4 |
| 시작일 | 2026-05-10 |
| 햇수 y | 1 |
| 개월 수 m | 2 |
| y년 m개월 후의 날짜 | =EDATE(B1,B2*12+B3) |
| y년 m개월 전의 날짜 | =EDATE(B1,-(B2*12+B3)) |
| 시작일 | 2026-07-03 |
| 영업일 수 b | 5 |
| b영업일 후의 날짜 | =WORKDAY(B1,B2) |
| b영업일 전의 날짜 | =WORKDAY(B1,-B2) |
| 시작일 | 2026-05-10 |
| 햇수 | 1 |
| 개월 수 | 2 |
| 주 수 | 3 |
| 일수 | 4 |
| 한꺼번에 더한 날짜 | =EDATE(B1,B2*12+B3)+B4*7+B5 |
| 한꺼번에 뺀 날짜 | =EDATE(B1,-(B2*12+B3))-B4*7-B5 |
결과가 숫자(일련번호)로 표시되면 메뉴의 ‘서식 → 숫자 → 날짜’로 날짜 표시로 바꿀 수 있습니다. 윤일이 얽힌 경우 EDATE가 이 계산기와 하루 어긋날 수 있다는 점도 Excel과 같습니다.
Python으로 계산하는 방법
from datetime import date, timedelta
import calendar
start = date(2026, 5, 10) # 시작일
years, months, weeks, days = 1, 2, 3, 4 # 더하고 싶은 년·월·주·일
def add_months(base_date, month_count):
"""달을 옮기고, 같은 날짜가 없는 달에서는 말일로 맞춘다(마이너스면 과거로)"""
total_month_index = base_date.year * 12 + (base_date.month - 1) + month_count
year, month_index = divmod(total_month_index, 12)
month = month_index + 1
last_day = calendar.monthrange(year, month)[1]
return date(year, month, min(base_date.day, last_day))
# ‘년 → 월 → 주·일’ 순서로 더한다(뺄 때는 모두 마이너스로 한다)
after = add_months(add_months(start, years * 12), months) + timedelta(days=weeks * 7 + days)
before = add_months(add_months(start, -years * 12), -months) - timedelta(days=weeks * 7 + days)
print(f"{years}년 {months}개월 {weeks}주 {days}일 후: {after}") # 2027-08-04
print(f"{years}년 {months}개월 {weeks}주 {days}일 전: {before}") # 2025-02-13
def add_business_days(base_date, business_days):
"""주말을 빼고 business_days일만큼 뒤의 날짜를 돌려준다"""
current = base_date
counted = 0
while counted < business_days:
current += timedelta(days=1)
if current.weekday() < 5: # 0~4가 월~금
counted += 1
return current
print(f"2026-07-03의 5영업일 후: {add_business_days(date(2026, 7, 3), 5)}") # 2026-07-10
LaTeX 등 수식 언어로 쓰는 법(복사 가능)
D₁ = D₀ + n, D₂ = D₀ − n
D_1 = D_0 + n, \quad D_2 = D_0 - n
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<msub><mi>D</mi><mn>1</mn></msub><mo>=</mo>
<msub><mi>D</mi><mn>0</mn></msub><mo>+</mo><mi>n</mi>
<mo>,</mo><mspace width="0.7em"/>
<msub><mi>D</mi><mn>2</mn></msub><mo>=</mo>
<msub><mi>D</mi><mn>0</mn></msub><mo>−</mo><mi>n</mi>
</mrow>
</math>
D_1 = D_0 + n, D_2 = D_0 - n
dateAfter = DatePlus[startDate, n]; dateBefore = DatePlus[startDate, -n]
dateAfter := startDate + n; dateBefore := startDate - n;
date_after = start_date + days(n); date_before = start_date - days(n);
D_1 = D_0 + n, D_2 = D_0 - n
N = 7w + d
N = 7w + d
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>N</mi><mo>=</mo>
<mn>7</mn><mi>w</mi>
<mo>+</mo><mi>d</mi>
</mrow>
</math>
N = 7w + d
totalDays = 7*weeks + extraDays
totalDays := 7*weeks + extraDays;
total_days = 7*weeks + extra_days;
N = 7w + d
T = 12y + m
T = 12y + m
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>T</mi><mo>=</mo>
<mn>12</mn><mi>y</mi>
<mo>+</mo><mi>m</mi>
</mrow>
</math>
T = 12y + m
totalMonths = 12*years + months
totalMonths := 12*years + months;
total_months = 12*years + months;
T = 12y + m
C = b + W
C = b + W
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>C</mi><mo>=</mo>
<mi>b</mi>
<mo>+</mo><mi>W</mi>
</mrow>
</math>
C = b + W
calendarDays = businessDays + weekendDays
calendarDays := businessDays + weekendDays;
calendar_days = business_days + weekend_days;
C = b + W
ChatGPT 에게 물어서 계산하는 방법
당신은 날짜 계산 도우미입니다. 다음 계산을 반드시 Python 코드를 실제로 실행해서 하고, 실행 결과의 날짜만을 근거로 답하세요(암산이나 추측으로 답하지 마세요). 1. 2026년 5월 10일에 ‘1년 2개월 3주 4일’을 더한 날짜와 뺀 날짜. 년 → 월 → 주·일 순서로 더하고, ‘몇 개월 후’는 다음 달의 같은 날짜(해당일)로 세며, 같은 날짜가 없는 달에서는 그달의 말일로 맞추세요. 2. 2026년 7월 3일(금요일)의 5영업일 후 날짜. 영업일은 주말만 빼고 세세요(공휴일은 고려하지 않음). 각각 계산에 사용한 코드와 실행 결과의 날짜·요일을 보여 주세요.
사용법
-
1숫자 입력계산하고 싶은 숫자를 입력란에 입력합니다
-
2계산‘계산’ 버튼을 누릅니다
-
3결과 확인계산 결과가 바로 표시됩니다. 계산의 원리와 공식 해설도 같은 페이지에서 확인할 수 있습니다
DataChef의 특징
전문 지식 없이도 직관적이고 간단하게 사용
개인정보를 등록하지 않고도 이용할 수 있습니다
"다운로드"를 누르면 파일이 자동으로 삭제됩니다
출처 표기 불필요
상업적 이용 허가 연락도 필요 없습니다