DateDiff 함수

두 날짜 사이의 간격 수를 반환합니다.

구문

DateDiff(interval, date1, date2)

인수:

  • Interval: 필수. date1과 date2 간의 차이를 계산하는 데 사용할 간격을 나타내는 문자열 표현식입니다. 값은 설정 섹션을 참조하십시오.
  • date1, date2: 필수. 날짜 표현식입니다. 계산에 사용할 2개의 날짜입니다.
Settings: interval 인수는 다음 값을 가질 수 있습니다.

표 11-10 Interval 인수 값

설정 설명
yyyy 연도
q Quarter
m Month
d Day
w Weekday
h Hour
n Minute
s Second

지원되는 날짜 형식:

  • MM-DD-YYYY
  • MM/DD/YYYY
  • DD-MM-YYYY
  • DD/MM/YYYY
  • YYYY-MM-DD
  • YYYY/MM/DD

지원되는 시간 형식:

hh:mm:ss

주석

DateDiff 함수를 사용하여 두 날짜 사이에 존재하는 지정된 시간 간격 수를 확인할 수 있습니다. 예를 들어, DateDiff를 사용하여 두 날짜 사이의 일수를 계산할 수 있습니다.

date1과 date2 사이의 일수를 계산하려면 Day("d")를 사용하면 됩니다. date1가 date2보다 이후 시점을 참조하는 경우 DateDiff 함수는 음수를 반환합니다.

12월 31일에서 바로 이어지는 연도의 1월 1일을 비교하는 경우 Year("yyyy")의 DateDiff는 하루만 경과했음에도 1을 반환합니다.

다음 예에서는 DateDiff 함수를 사용하여 지정된 날짜와 오늘 사이의 일수를 표시합니다.

예 1:

Function DiffADate(theDate)
DiffADate = "Days from today: " & DateDiff("d", Now, theDate)
End Function

예 2:

Dim StartDate, EndDate, Difference
StartDate = "01/01/2025"
EndDate = "21/01/2025"
Difference = DateDiff("d", StartDate, EndDate) 
'Output: 20

예 3:

Dim StartDate, EndDate, Difference
StartDate = "01/01/2020"
EndDate = "01/01/2025"
Difference = DateDiff("yyyy", StartDate, EndDate) 
'Output: 5

예 4:

Dim StartDate, EndDate, Difference
StartDate = "21/01/2025"
EndDate = "21/03/2025" 
Difference = DateDiff("m", StartDate, EndDate)
'Output: 2

예 5:

Dim StartDate, EndDate, Difference
StartDate = "21/01/2025 08:00:00" ' Includes time component.
EndDate = "21/01/2025 18:00:00"   ' Includes time component.
Difference = DateDiff("h", StartDate, EndDate) 
'Output: 10

예 6:

Dim StartDate, EndDate, Difference
StartDate = "21/01/2025 08:00:00" ' Includes time component.
EndDate = "21/01/2025 08:45:00"   ' Includes time component.
Difference = DateDiff("n", StartDate, EndDate) 
'Output: 45

예 7:

Dim StartDate, EndDate, Difference
StartDate = "21/01/2025 08:45:00" ' Includes time component.
EndDate = "21/01/2025 08:45:50"   ' Includes time component.
Difference = DateDiff("s", StartDate, EndDate) 
'Output: 50