Hàm DateDiff() trong VBA trả về sự khác nhau giữa 2 khoảng thời gian được chỉ định.
Nội dung chính
Cú pháp
DateDiff(Interval, Date1, Date2 [,Firstdayofweek[, Firstweekofyear]])
Mô tả thông số:
- Interval: Tham số bắt buộc, Nó có thể lấy các giá trị sau:
- d - ngày trong năm
- m - tháng trong năm
- y - năm của năm
- yyyy - năm
- w - ngày trong tuần
- ww - tuần
- q - quý
- h - giờ
- m - phút
- s - giây
- Date1, Date2: Tham số bắt buộc.
-
Firstdayofweek: Tham số tùy chọn. Chỉ định ngày đầu tuần. Nó có thể là một trong các giá trị sau:
- 0 = vbUseSystemDayOfWeek - Sử dụng cài đặt API hỗ trợ ngôn ngữ quốc gia (NLS).
- 1 = vbSunday - Sunday
- 2 = vbMonday - Monday
- 3 = vbTuesday - Tuesday
- 4 = vbWednesday - Wednesday
- 5 = vbThursday - Thursday
- 6 = vbFriday - Friday
- 7 = vbSaturday - Saturday
-
Firstdayofweek - Một tham số tùy chọn. Chỉ định ngày đầu năm. Nó có thể lấy các giá trị sau.
- 0 = vbUseSystem - Sử dụng cài đặt API hỗ trợ ngôn ngữ quốc gia (NLS).
- 1 = vbFirstJan1 - Bắt đầu với tuần xảy ra ngày 1 tháng 1 (mặc định).
- 2 = vbFirstFourDays - Bắt đầu với tuần có ít nhất bốn ngày trong năm mới.
- 3 = vbFirstFullWeek - Bắt đầu với tuần đầy đủ đầu tiên của năm mới.
Ví dụ sử dụng hàm DateDiff() trong VBA
Sub vidu_ham_DiffDate() Dim fromDate As Variant fromDate = "01-Jan-09 00:00:00" Dim toDate As Variant toDate = "01-Jan-10 23:59:00" Cells(1, 1) = ("Line 1 : " & DateDiff("yyyy", fromDate, toDate)) Cells(2, 1) = ("Line 2 : " & DateDiff("q", fromDate, toDate)) Cells(3, 1) = ("Line 3 : " & DateDiff("m", fromDate, toDate)) Cells(4, 1) = ("Line 4 : " & DateDiff("y", fromDate, toDate)) Cells(5, 1) = ("Line 5 : " & DateDiff("d", fromDate, toDate)) Cells(6, 1) = ("Line 6 : " & DateDiff("w", fromDate, toDate)) Cells(7, 1) = ("Line 7 : " & DateDiff("ww", fromDate, toDate)) Cells(8, 1) = ("Line 8 : " & DateDiff("h", fromDate, toDate)) Cells(9, 1) = ("Line 9 : " & DateDiff("n", fromDate, toDate)) Cells(10, 1) = ("Line 10 : " & DateDiff("s", fromDate, toDate)) End Sub
Kết quả:
Line 1 : 1 Line 2 : 4 Line 3 : 12 Line 4 : 365 Line 5 : 365 Line 6 : 52 Line 7 : 52 Line 8 : 8783 Line 9 : 527039 Line 10 : 31622340