Hàm DateDif trong Excel

Thứ sáu - 18/10/2013 23:00
Microsoft đã bao gồm tất cả những phép tính phức tạp như công, trừ, nhân chia và dùng các dữ liệu phức tạp khác thành Hàm DateDif để giúp ta đơn giản hóa công việc.
Bạn muốn biết số ngày, số tháng hoặc số năm giữa 2 mốc thời gian, khi gặp bài toán này chúng ta thường nghĩ đến các phương pháp tính toán công, trừ, nhân chia và dùng các dữ liệu phức tạp để phân tích xem 2 mốc thời gian đó nằm trong khoảng nào, có bao nhiêu tháng 30 ngày, có năm nhuận không, vân vân. Và tất nhiên với cách suy nghĩ đó chúng ta cũng giải quyết được bài toán rồi.

Tuy nhiên Microsoft đã bao gồm tất cả những phép tính phức tạp ấy thành  Hàm DateDif để giúp ta đơn giản hóa công việc.

Thông thường mỗi khi ta áp dụng một hàm nào đó, chúng ta chỉ việc đánh dấu = và gõ chữ cái đầu tiên thì danh sách các hàm sẽ hiện ra, cùng với cú pháp định sẵn. Tuy nhiên với Hàm này, bạn sẽ không thể nào nhìn thấy nó xuất hiện trong excel. Đo đó bạn khó mà biết được sự tồn tại của nó trong excel và cách sử dụng nó như thế nào.

Do đó bạn hãy nhớ công thức hàm và các tham số của nó như tôi sắp giới thiệu sau đây:

Cú pháp:

=DATEDIF(start_date, end_date, Interval)

Trong đó:

start_date: Ngày bắt đầu tính

end_date: Ngày kết thúc

Lưu ý: Start_Date và End_Date phải là được viết dưới dạng  Hàm Date, Nếu không hàm sẽ trả về #Value!.

Interval: Tùy chọn kết quả trả về. Các tùy chọn này phải để trong ngoặc kép nếu bạn nhập trực tiếp vào hàm hoặc tham chiếu đến 1 ô chứa giá trị là những tùy chọn đó.

Kiểu trả về   Diễn giải
“d”             trả về tổng số ngày giữa 2 mốc thời gian
“m”            trả về tổng số tháng (chẵn) có đủ số ngày theo mặc định giữa 2 mốc thời gian
“y”             trả về tổng số năm (chẵn) giữa 2 mốc thời gian
“yd”           trả về tổng số ngày chưa đủ một năm trong 2 mốc thời gian (Luôn nhỏ hon 365)
“ym”          trả về tổng số tháng chưa đủ một năm trong 2 mốc thời gian (Luôn nhỏ hơn 12)
“md”          trả về tổng số ngày chưa đủ của tháng mặc định trong 2 mốc thời gian

  Hàm DateDif

Ví dụ:
Ta có ngày Bắt đầu (Start_date) là ngày 12 tháng 10 năm 2009 và ngày kết thúc (End_Date) là ngày 13 tháng 6 năm 2012 cách nhau 975 ngày theo kết quả ô D4.

Ô D2: Interval là "Y" có nghĩa là yêu cầu Hàm trả về số Năm (Year) khác nhau giữa 2 ngày bắt đầu và kết thúc. Và Kết quả là 2 năm. Tại sao vậy? nếu ta lấy 975 chia cho 3 thì ta được 2,67 ngày. Tuy nhiên với Interval là "Y" thì hàm chỉ trả về số nguyên (chỉ tính số năm có đủ 12 tháng)

Ô D3 kết quả là 32 tháng. Theo bạn là khoảng thời gian 975 ngày có đúng là 32 tháng không?
Chắc chắn là không rồi. Vi với Kiểu trả về là M thì Hàm cũng sẽ trả về những tháng có đủ số ngày trong tháng thôi.
Có khi nào khoảng cách giữa mốc ngày là số tháng chẵn, số năm chẵn? Điều đó đơn giãn thôi, bạn hãy nhớ quy luật sau:

- Kiểu trả về YD và YM nhằm kiểm tra Kiểu trả về Y. Nếu kết quả kiểu YD hoặc YM lớn hơn 0, thì ta biết vẫn còn 1 năm lẻ.
Ví dụ ô D5 và D6: khoảng thời gian 975 ngày tương ứng với 2 năm (chẵn) và 244 ngày hoặc 2 năm chẵn 8 tháng và một ngày
- Kiểu trả về MD nhằm kiểm tra Kiểu trả về M. Nếu kết quả kiểu MD lớn hơn 0, thì ta biết vẫn còn 1 tháng lẻ.
Ví dụ ô D7: khoảng thời gian 975 ngày tương ứng với 2 năm (chẵn) và 244 ngày; hoặc 2 năm chẵn 8 tháng và một ngày ;hoặc 32 tháng và 1 ngày.

Vậy ta có thể dùng công thức sau để đếm năm chẵn, và tháng lẻ, ngày lẻ như sau:

+ Năm và Ngày còn lại
="Khoảng cách giữa 2 ngày 12-Oct-2009 và 13-Jun-2012 là "&Datedif("12-Oct-2009","13-Jun-2012","Y")&" năm và "&Datedif("12-Oct-2009","13-Jun-2012","yd")&" ngày"

+ năm + Tháng + Ngày lẻ
="Khoảng cách giữa 2 ngày 12-Oct-2009 và 13-Jun-2012 là "&Datedif("12-Oct-2009","13-Jun-2012","Y")&" năm và "&Datedif("12-Oct-2009","13-Jun-2012","YM")&" tháng và "&Datedif("12-Oct-2009","13-Jun-2012","md")&" ngày"

+Tháng + Ngày lẻ
="Khoảng cách giữa 2 ngày 12-Oct-2009 và 13-Jun-2012 là "&Datedif("12-Oct-2009","13-Jun-2012","M")&" tháng và "&Datedif("12-Oct-2009","13-Jun-2012","md")&" ngày"

Các bạn copy các công thức trên để kiểm nghiệm nhé

enlightenedNếu máy tính của bạn mặc định Separator cho Excel là dấu "." (dấu chấm) để phân cách dấu thập phân và dấu "," (Dấu phẩy) để phân cách phần nghìn, triệu thì hãy sửa dấu "," thành dấu ";" ở công thức vừa copy ra rồi nhấn Enter.

Chúc bạn thành công

Tác giả bài viết: Minh Phú

Chú ý: Việc đăng lại bài viết trên ở website hoặc các phương tiện truyền thông khác mà không ghi rõ nguồn http://aneedz.com là vi phạm bản quyền

Tổng số điểm của bài viết là: 14 trong 3 đánh giá

Xếp hạng: 4.7 - 3 phiếu bầu
Click để đánh giá bài viết

  Ý kiến bạn đọc

Mã bảo mật   

Những tin mới hơn

Những tin cũ hơn

Thống kê
  • Đang truy cập54
  • Máy chủ tìm kiếm2
  • Khách viếng thăm52
  • Hôm nay7,632
  • Tháng hiện tại43,662
  • Tổng lượt truy cập1,564,514
Bạn đã không sử dụng Site, Bấm vào đây để duy trì trạng thái đăng nhập. Thời gian chờ: 60 giây