엑셀 두 날짜 사이 일수 계산 방법 (DATEDIF)

엑셀에서 업무를 하다 보면 두 날짜 사이에 며칠이 지났는지 계산해야 하는 경우가 많습니다.

예를 들어 입사일부터 퇴사일까지의 근무일수, 계약 시작일부터 종료일까지의 계약기간, 대여일과 반납일 사이의 이용기간 등을 계산할 때 날짜 차이를 구해야 합니다.

엑셀에서는 복잡한 함수 없이 종료일에서 시작일을 빼는 것만으로 두 날짜 사이의 일수를 계산할 수 있습니다.

이번 글에서는 엑셀 두 날짜 사이 일수 계산 방법부터 DATEDIF 함수, 오늘 날짜까지의 경과일수, 시작일과 종료일을 모두 포함하는 방법까지 알아보겠습니다.


엑셀 두 날짜 사이 일수 계산 기본 방법

다음과 같이 날짜가 입력되어 있다고 가정해 보겠습니다.

시작일종료일
2026-08-012026-08-20

시작일이 A2 셀, 종료일이 B2 셀에 있다면 C2 셀에 다음 수식을 입력합니다.

=B2-A2

결과는 다음과 같습니다.

19

즉, 2026년 8월 1일부터 8월 20일까지 두 날짜의 차이는 19일입니다.

엑셀에서는 날짜를 내부적으로 일련번호 형태의 숫자로 저장하기 때문에 날짜끼리 뺄셈을 하면 두 날짜 사이의 일수 차이를 바로 계산할 수 있습니다.


시작일과 종료일을 모두 포함하려면?

날짜를 계산할 때 가장 많이 헷갈리는 부분 중 하나입니다.

앞의 예제처럼

  • 시작일 : 2026-08-01
  • 종료일 : 2026-08-20

인 경우

=B2-A2

를 사용하면 결과는 19일입니다.

하지만 8월 1일을 1일째로 계산하고 8월 20일까지 모두 포함해야 한다면 실제 날짜 개수는 20일입니다.

이때는 결과에 1을 더하면 됩니다.

=B2-A2+1

따라서 시작일과 종료일을 모두 포함한 기간은 20일이 됩니다.

숙박일수처럼 두 날짜 사이의 차이만 필요한지, 근무기간처럼 시작일부터 종료일까지 날짜를 모두 세어야 하는지에 따라 계산 방법을 구분해야 합니다.


DATEDIF 함수로 두 날짜 사이 일수 계산하기

DATEDIF 함수를 이용하는 방법도 있습니다.

수식은 다음과 같습니다.

=DATEDIF(A2,B2,"d")

여기에서

  • A2 : 시작일
  • B2 : 종료일
  • "d" : 두 날짜 사이의 일수

를 의미합니다.

예를 들어 A2가 2026-08-01이고 B2가 2026-08-20이라면 결과는 19입니다.

단순히 일수만 계산하는 경우에는 =B2-A2가 훨씬 간단하지만, DATEDIF 함수는 연·월·일 단위로 기간을 구분해서 계산할 때 유용합니다.


오늘 날짜까지 며칠 지났는지 계산하기

특정 날짜부터 오늘까지 며칠이 지났는지 자동으로 계산하려면 TODAY 함수를 사용하면 됩니다.

A2 셀에 시작일이 입력되어 있다면 다음과 같이 작성합니다.

=TODAY()-A2

예를 들어 A2 셀에 입사일이나 가입일을 입력해 놓으면 오늘 날짜를 기준으로 몇 일이 지났는지 자동으로 계산됩니다.

DATEDIF 함수를 이용한다면 다음과 같이 사용할 수도 있습니다.

=DATEDIF(A2,TODAY(),"d")

TODAY 함수는 현재 날짜를 자동으로 가져오기 때문에 날짜가 바뀌면 계산 결과도 함께 변경됩니다.

따라서 재직일수, 가입일수, 사용일수 등을 자동으로 관리할 때 활용하기 좋습니다.


날짜를 직접 입력해서 일수 계산하기

셀을 참조하지 않고 수식 안에 날짜를 직접 입력해야 하는 경우에는 DATE 함수를 사용할 수 있습니다.

예를 들어 2026년 8월 1일부터 2026년 8월 20일까지의 일수를 계산하려면 다음과 같이 입력합니다.

=DATE(2026,8,20)-DATE(2026,8,1)

결과는 19입니다.

날짜를 "2026-08-20"처럼 직접 문자열로 입력하는 것보다 DATE 함수를 사용하면 날짜 형식이나 지역 설정에 따른 오류를 줄일 수 있습니다.


두 날짜 사이의 평일만 계산하려면?

회사 업무에서는 단순한 날짜 차이가 아니라 토요일과 일요일을 제외한 근무일수가 필요한 경우도 있습니다.

이때 사용할 수 있는 대표적인 함수가 NETWORKDAYS입니다.

=NETWORKDAYS(A2,B2)

NETWORKDAYS 함수는 시작일과 종료일 사이에서 토요일과 일요일을 제외하고 평일의 개수를 계산합니다.

여기서 중요한 차이가 있습니다.

=B2-A2

는 단순히 날짜의 차이를 계산하지만,

=NETWORKDAYS(A2,B2)

는 시작일과 종료일을 포함하여 평일인 날짜의 개수를 계산합니다.

따라서 두 함수의 결과를 단순 비교하면 숫자가 다르게 나올 수 있습니다.


공휴일까지 제외해서 근무일수 계산하기

주말뿐만 아니라 회사에서 관리하는 공휴일까지 제외하려면 NETWORKDAYS 함수에 공휴일 범위를 추가할 수 있습니다.

예를 들어

  • A2 : 시작일
  • B2 : 종료일
  • E2:E10 : 제외할 공휴일

이라면 다음과 같이 입력합니다.

=NETWORKDAYS(A2,B2,E2:E10)

이렇게 하면 토요일과 일요일뿐 아니라 E2:E10에 입력된 공휴일까지 제외하여 근무일수를 계산할 수 있습니다.

회사 휴가일수나 프로젝트 실제 업무일 등을 계산할 때 활용하기 좋은 방법입니다.


결과가 날짜로 표시될 때 해결 방법

두 날짜를 빼는 수식을 입력했는데 결과가 1900-01-19와 같은 날짜 형태로 표시되는 경우가 있습니다.

계산이 잘못된 것이 아니라 결과 셀의 표시 형식이 날짜로 설정되어 있기 때문입니다.

결과 셀을 선택한 다음

홈 → 표시 형식 → 일반 또는 숫자

로 변경하면 정상적인 일수로 표시됩니다.

예를 들어 날짜 형태로 보였던 결과가 표시 형식을 일반으로 변경하면 19와 같은 숫자로 나타납니다.


종료일이 비어 있을 때 오류 방지하기

실무용 엑셀에서는 종료일이 아직 입력되지 않은 행이 있을 수 있습니다.

이 상태에서 날짜 계산 수식을 미리 입력해 두면 원하지 않는 결과가 나타날 수 있습니다.

이때 IF 함수를 함께 사용하면 편리합니다.

=IF(B2="","",B2-A2)

B2에 종료일이 없다면 빈칸으로 표시하고, 종료일이 입력되어 있다면 두 날짜 사이의 일수를 계산합니다.

입사자·퇴사자 관리표나 계약기간 관리표처럼 계속 데이터를 추가하는 문서에서 활용하기 좋은 수식입니다.


엑셀 두 날짜 사이 일수 계산 방법 정리

사용 목적에 따라 필요한 수식은 다음과 같습니다.

계산 목적수식
두 날짜의 일수 차이=B2-A2
시작일·종료일 모두 포함=B2-A2+1
DATEDIF로 일수 계산=DATEDIF(A2,B2,"d")
시작일부터 오늘까지=TODAY()-A2
평일만 계산=NETWORKDAYS(A2,B2)
공휴일까지 제외=NETWORKDAYS(A2,B2,E2:E10)
종료일이 없으면 빈칸=IF(B2="","",B2-A2)

단순히 두 날짜 사이에 며칠 차이가 있는지 알고 싶다면 =B2-A2가 가장 간단합니다.

반대로 시작일과 종료일을 모두 하루씩 포함해야 한다면 +1을 추가해야 합니다.

또한 실제 업무일을 계산하려는 경우에는 NETWORKDAYS 함수를 활용하면 주말이나 지정한 공휴일을 제외할 수 있습니다.


일수가 아닌 개월 수를 계산하려면?

두 날짜 사이의 기간을 일수가 아니라 개월 수로 계산해야 하는 경우도 있습니다.

예를 들어 입사 후 몇 개월이 지났는지, 계약기간이 총 몇 개월인지 계산하려면 DATEDIF 함수의 "m" 옵션을 사용할 수 있습니다.

=DATEDIF(A2,B2,"m")

이 수식은 두 날짜 사이에서 완전히 경과한 개월 수를 계산합니다.

개월 수 계산은 일수 계산과 기준이 조금 다르기 때문에 자세한 내용은 「엑셀 개월 수 계산 방법」 글에서 확인할 수 있습니다.


마무리

엑셀에서 두 날짜 사이의 일수를 구하는 가장 간단한 방법은 종료일에서 시작일을 빼는 것입니다.

=B2-A2

이 수식만 기억해도 대부분의 날짜 차이 계산을 해결할 수 있습니다.

다만 실제 업무에서는 시작일과 종료일을 모두 포함할 것인지, 주말을 제외할 것인지, 공휴일까지 제외할 것인지에 따라 필요한 수식이 달라집니다.

따라서 단순 날짜 차이는 B2-A2, 평일 기준 업무일수는 NETWORKDAYS처럼 계산 목적에 맞게 함수를 선택하는 것이 좋습니다.

“엑셀 두 날짜 사이 일수 계산 방법 (DATEDIF)”에 대한 1개의 생각

댓글 남기기