Đánh giá lequocthai.com:
Hàm DATEDIF được phân loại là hàm Ngày tháng/Giờ trong Excel. Tên hàm đã phần nào nói lên chức năng của nó. Hàm này tính toán sự khác biệt (DIF) giữa hai ngày đã cho (DATE). Nó đặc biệt hữu ích cho dân phân tích tài chính, chẳng hạn khi cần tính thời gian nắm giữ theo ngày, tháng hoặc năm.
DATEDIF là một hàm ẩn (không được công bố chính thức), nghĩa là bạn sẽ không tìm thấy nó trong tab công thức. Ngoài ra, Excel cũng sẽ không hỗ trợ tính năng IntelliSense (gợi ý cú pháp hàm) khi bạn nhập hàm DATEDIF, nhưng hàm vẫn hoạt động bình thường nếu được cấu hình chính xác.

Lưu ý:
Xin lưu ý rằng
Hàm DATEDIF
trong Excel hoàn toàn khác với hàm
DATEDIFF
(chú ý chữ ‘F’ thừa) trong VBA.
Cú pháp
Việc nắm vững cú pháp của hàm DATEDIF rất quan trọng vì Excel sẽ không gợi ý cho bạn. Cú pháp của hàm như sau:
=DATEDIF(start_date, end_date, unit)
Đối số:
‘
start_date
‘ – Đây là đối số bắt buộc, yêu cầu bạn nhập ngày bắt đầu.
‘
end_date
‘ – Đây là đối số bắt buộc, yêu cầu bạn nhập ngày kết thúc.
‘
unit
‘ – Đối số này được cung cấp dưới dạng chuỗi văn bản, đại diện cho đơn vị mà bạn muốn tính toán sự khác biệt. Bạn có thể tham khảo bảng dưới đây để biết các mã cần thiết cho kết quả mong muốn.
Giá trị cho đối số Unit
Đơn vị
Mô tả
“Y”
Trả về sự khác biệt dưới dạng số năm hoàn chỉnh.
“M”
Trả về sự khác biệt dưới dạng số tháng hoàn chỉnh.
“D”
Trả về sự khác biệt theo ngày.
“MD”
Trả về sự khác biệt theo ngày, bỏ qua tháng và năm.
“YM”
Trả về sự khác biệt theo tháng, bỏ qua năm.
“YD”
Trả về sự khác biệt theo ngày, bỏ qua năm.
Những điểm cần lưu ý về hàm DATEDIF
Hàm DATEDIF là một hàm kế thừa từ Lotus 1-2-3 và không được công bố chính thức. Khi bạn bắt đầu nhập tên hàm, Excel sẽ không hiển thị bất kỳ gợi ý nào như với các hàm khác.
Hàm DATEDIF chấp nhận đầu vào dưới dạng chuỗi văn bản, số sê-ri ngày tháng (serial number) hoặc kết quả trả về từ các hàm Excel khác.
Nếu ngày
start_date
lớn hơn (xảy ra sau)
end_date
, hàm sẽ trả về lỗi #NUM. Nếu bất kỳ đối số nào chứa ngày không hợp lệ, hàm sẽ trả về lỗi #VALUE.
Ví dụ
Chúng ta hãy cùng xem qua một số ví dụ về hàm DATEDIF.
Ví dụ 1 – Công thức cơ bản của hàm DATEDIF
Đầu tiên, hãy bắt đầu với một ví dụ đơn giản để xem hàm DATEDIF hoạt động như thế nào. Giả sử chúng ta có hai ngày trong ô A2 và B2, và sẽ tính toán sự khác biệt giữa chúng bằng công thức sau:
=DATEDIF(A2, B2, "d")

Công thức đặt đơn vị là “d”, nghĩa là kết quả sẽ là số ngày hoàn chỉnh. Hàm trả về sự chênh lệch số ngày giữa hai ngày được cung cấp. Trong ví dụ này, kết quả là 1985 ngày.
Lưu ý rằng phép tính này có thể thực hiện được mà không cần dùng DATEDIF. Vì Excel lưu trữ ngày tháng dưới dạng số sê-ri, nên việc lấy số sê-ri của ngày sau trừ đi số sê-ri của ngày trước cũng sẽ cho ra ngay sự khác biệt về số ngày.
Ví dụ 2 – Đếm sự khác biệt theo ngày (Tất cả các biến thể)
Được rồi các chuyên gia Excel, chúng ta đã đề cập rằng có nhiều cách để lấy kết quả từ hàm DATEDIF. Bây giờ chúng ta sẽ nói về các tùy chọn để tính sự khác biệt theo ngày.
Chúng ta đã thấy kết quả khi dùng “d”. Hãy cùng xem nhanh “yd” và “md” trả về kết quả gì.
=DATEDIF(A2, B2, "d") //khác biệt tính theo ngày
=DATEDIF(A3, B3, "yd") //khác biệt tính theo ngày, bỏ qua năm
=DATEDIF(A4, B4, "md") //khác biệt tính theo ngày, bỏ qua cả tháng và năm

Khi dùng “yd” trong đối số
unit
, sự khác biệt được tính theo ngày nhưng bỏ qua thành phần năm. Trên thực tế, sự khác biệt được tính như thể cả hai ngày đều nằm trong cùng một năm. Do đó, kết quả giảm xuống còn 158 so với 1985.
Khi dùng “md” trong đối số
unit
, sự khác biệt được tính theo ngày nhưng bỏ qua cả tháng và năm. Lúc này, sự khác biệt được tính như thể cả hai ngày đều trong cùng một tháng và cùng một năm. Kết quả tiếp tục giảm xuống còn 5.
Ví dụ 3 – Đếm sự khác biệt theo tháng (Tất cả các biến thể)
Hãy sẵn sàng vì chúng ta còn một vài cách tính nữa. Lần này, chúng ta sẽ tính sự khác biệt theo tháng.
=DATEDIF(A2, B2, "m") //khác biệt tính theo tháng
=DATEDIF(A3, B3, "ym") //khác biệt tính theo tháng, bỏ qua năm

Khi dùng “m” trong đối số
unit
, Excel tính toán sự khác biệt theo tháng một cách thông thường. Cứ mỗi khoảng 30-31 ngày thì được tính là thêm một tháng. Trong ví dụ, công thức trả về 65 tháng.
Tuy nhiên, khi dùng “ym”, kết quả thay đổi thành 5. Điều này là do Excel bỏ qua thành phần năm và chỉ tính chênh lệch số tháng, giống như giả định cả hai ngày đều trong cùng một năm. Do đó, kết quả chỉ còn 5.
Hay nhỉ?
Chúng ta vẫn chưa xong đâu…
Ví dụ 4 – Đếm sự khác biệt theo năm
Những khả năng đa dạng mà đối số
unit
tạo ra sẽ kết thúc tại đây. Chỉ có một cách để tính sự khác biệt về số năm, như sau:
=DATEDIF(A2, B2, "y") //khác biệt tính theo năm

Khá là đơn giản. Excel cho chúng ta sự khác biệt hoàn chỉnh giữa hai năm. Trong ví dụ, kết quả là 5.
Tuy nhiên, lưu ý rằng sự khác biệt này không
chính xác
là 5. Vì ngày và tháng của cả hai đều khác nhau, nên có một phần năm lẻ đã bị hàm DATEDIF bỏ qua. Nếu muốn kết quả chính xác, bạn có thể dùng
hàm YEARFRAC
:
=YEARFRAC(A2, B2) //khác biệt chính xác tính theo năm

Hàm YEARFRAC sẽ cho bạn kết quả chính xác, trong trường hợp này là 5.43 năm.
Ví dụ 5 – Lấy số năm, tháng và ngày giữa hai ngày
Đã đến lúc nâng cấp và làm được nhiều hơn với hàm tiện dụng này. Lần này, chúng ta sẽ tính toán sự khác biệt theo năm, tháng và ngày cùng một lúc.
Chúng ta có thể dùng công thức sau:
=DATEDIF(A2, B2, "y")&" năm, "&DATEDIF(A2, B2, "ym")& " tháng, " &DATEDIF(A2, B2, "md")&" ngày"

Đừng choáng ngợp bởi độ dài của công thức, chúng ta sẽ phân tích nó ngay.
Có ba công thức con ở đây, được kết hợp lại thành một công thức duy nhất nhờ toán tử nối chuỗi (&). Chúng ta đã thảo luận về từng phần trong các ví dụ trước, vậy hãy xem logic kết hợp của chúng.
Hàm DATEDIF đầu tiên tính sự khác biệt theo năm.
Hàm DATEDIF thứ hai tính sự khác biệt theo tháng nhưng bỏ qua năm. Điều này phù hợp vì phần năm đã được tính ở hàm đầu tiên.
Hàm DATEDIF thứ ba tính sự khác biệt theo ngày nhưng bỏ qua cả tháng và năm. Điều này cũng phù hợp vì tháng và năm đã được tính bởi hai hàm trước.
Các chuỗi văn bản như ” năm, ” chỉ được dùng để nối với kết quả của hàm DATEDIF nhằm trình bày đẹp hơn và không tham gia vào phép tính nào.
Đó là cách Excel cho ra kết quả cuối cùng: 5 năm, 5 tháng, 5 ngày.
Dễ như ăn kẹo, phải không?
Ví dụ 6 – Tính tuổi từ ngày sinh
Hãy áp dụng công thức trước cho một mục đích thiết thực — tính tuổi. Giả sử tôi có một cuộc tranh luận thân thiện về tuổi chính xác và chúng tôi quyết định dùng Excel.
Việc
tính tuổi trong Excel
khá đơn giản, chúng ta chỉ cần sửa đổi chút ít công thức trên:
=DATEDIF(A2, TODAY(), "y")&" năm, "&DATEDIF(A2, TODAY(),"ym")& " tháng, " &DATEDIF(A2, TODAY(), "md")&" ngày"

Có lẽ bạn đã nhận ra ngay điểm khác biệt khi xem lướt qua công thức này — đó là việc sử dụng
hàm TODAY
.
Hàm TODAY đóng vai trò là đối số
end_date
vì chúng ta muốn tính sự khác biệt từ một ngày cố định (ngày sinh) cho đến ngày hôm nay.
Ô A2 chứa Ngày Sinh sẽ là điểm bắt đầu. Ngoài ra, công thức vận dụng cùng một logic như ví dụ trước.
Kết quả là 26 năm, 3 tháng, 10 ngày. Tôi đương nhiên không dùng ngày sinh thật vì tôi không thích ngủ trên ghế sofa.
Vậy là chúng ta đã tìm hiểu khá kỹ về hàm DATEDIF. Bạn có thể tự tin xem mình như một chuyên gia về hàm DATEDIF sau khi thực hành kỹ các công thức này. Tuy nhiên, tôi thực sự khuyên bạn không nên dùng ngày sinh thật của vợ/chồng để thực hành. Trong khi bạn bận rộn với DATEDIF, chúng tôi sẽ có một hàm Excel khác sẵn sàng chờ bạn khám phá!







