Hướng dẫn cách sử dụng hàm DATEDIFF trong VBA Excel

Hàm DATEDIF là một hàm khá thông dụng trong Excel giúp chúng ta tính được khoảng cách giữa 2 mốc thời gian. Và trong VBA chúng ta có một hàm tương tự là hàm DATEDIFF (có nhiều hơn 1 chữ F). Trong bài viết này chúng ta cùng tìm hiểu cách sử dụng hàm DATEDIFF trong VBA Excel nhé.

Cú pháp hàm DATEDIFF trong VBA

Hàm DateDiff trong VBA được viết như sau:

DateDiff( interval, date1, date2, [first_day_of_week],  [first_week_of_year] )

Trong đó:

Interval: Ký hiệu đại diện cho khoảng thời gian cần tìm, gồm các loại ký hiệu:

  • yyyy : Năm
  • q : Quý
  • m : Tháng
  • y : Số ngày trong năm
  • d : Số ngày
  • w: Ngày trong tuần (thứ)
  • ww : Số tuần
  • h : Số giờ
  • n : Số phút
  • s : Số giây

Date1Date2: Là 2 mốc thời gian cần xét

First_day_of_week: (Không bắt buộc): Số chỉ định ngày đầu tuần là thứ mấy. Nếu không sử dụng thì mặc định là ngày Chủ nhật

First_week_of_year: (Không bắt buộc): Số chỉ định tuần đầu tiên của năm là tuần chứa ngày nào. Nếu không sử dụng thì mặc định là tuần chứa ngày 01 tháng 01 là tuần đầu tiên của năm.

Kết quả trả về của hàm DateDiff là 1 con số.

Ví dụ về hàm DateDiff trong VBA

Tính khoảng cách số năm giữa 2 thời điểm

Tính khoảng cách số năm từ ngày 22/11/2003 tới ngày 22/11/2013:

Cú pháp:

DateDiff(“yyyy”, “22/11/2003” , “22/11/2013”)

Khi gán giá trị kết quả vào ô A1, ta được kết quả là số 10

Tính khoảng cách số tháng giữa 2 thời điểm

Tính khoảng cách số tháng từ ngày 22/11/2016 tới ngày 15/09/2018:

Sub DateDiff_Test_02()
Range(“A2”).Value = DateDiff(“m”, “22/11/2016”, “15/09/2018”)
End Sub

Kết quả của Sub trên cho chúng ta giá trị trong ô A2 (của Sheet đang được Active) là 22.

Viết hàm tự tạo dựa vào hàm DateDiff

Bạn hoàn toàn có thể tự tạo ra các hàm theo ý muốn để tính khoảng cách giữa 2 thời điểm cụ thể bằng cách viết Function trong VBA.

Ví dụ: Hàm xác định khoảng cách số ngày giữa 2 mốc thời gian:

Trong VBA bạn viết Function sau đây vào 1 Module:

Function KhoangCachNgay (NgayBD as Date, NgayKT as Date) as Long

KhoangCachNgay = DateDiff(“d”, NgayBD, NgayKT)

End Function

Trong Workbook chứa Function trên, bạn có thể sử dụng hàm:

Rất đơn giản phải không nào. Chúc các bạn áp dụng tốt kiến thức này vào công việc.

Ngoài ra bạn có thể tìm hiểu thêm một số nội dung:

Hướng dẫn cách viết hàm tự tạo trong Excel bằng VBA

Hướng dẫn cách thay đổi kích thước danh sách xổ xuống trong Data Validation bằng VBA Excel

Tìm hiểu sự khác nhau giữa các thuộc tính Text Value và Value2 của đối tượng Range trong VBA


Tác giả: duongquan211287

· · ·

Khóa học mới xuất bản