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

Lưu ý:
Vui lòng lưu ý rằng DATEDIF Function 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 rõ cú pháp của hàm DATEDIF là rất quan trọng vì Excel sẽ không hỗ trợ bạn bằng IntelliSense. Cú pháp như sau:
=DATEDIF(start_date, end_date, unit)
Các đối số:
- start_date – Đối số bắt buộc, bạn sẽ nhập ngày bắt đầu ở đây.
- end_date – Đối số bắt buộc, bạn sẽ nhập ngày kết thúc ở đây.
- unit – Đối số này được cung cấp dưới dạng chuỗi văn bản và đại diện cho đơn vị mà công thức sẽ tính sự chênh lệch. Bạn có thể tham khảo bảng dưới đây để biết các mã cần dùng cho kết quả mong muốn.
Mã cho Đối số Unit
| MÃ | MÔ TẢ |
|---|---|
| “Y” | Trả về sự chênh lệch dưới dạng số năm hoàn chỉnh. |
| “M” | Trả về sự chênh lệch dưới dạng số tháng hoàn chỉnh. |
| “D” | Trả về sự chênh lệch dưới dạng số ngày. |
| “MD” | Trả về số ngày, bỏ qua tháng và năm. |
| “YM” | Trả về số tháng, bỏ qua năm. |
| “YD” | Trả về số ngày, bỏ qua năm. |
Đặc điểm quan trọng của hàm DATEDIF
- DATEDIF là một hàm tương thích chưa được tài liệu hoá, kế thừa từ Lotus 1-2-3. Khi bạn bắt đầu gõ hàm DATEDIF, 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, hoặc kết quả được truyền từ các hàm Excel khác.
- Nếu start_date lớn hơn end_date, hàm sẽ trả về lỗi #NUM!. Nếu bất kỳ đối số nào chứa ngày mà Excel không nhận dạng được, hàm sẽ trả về lỗi #VALUE!.
Ví dụ
Ví dụ 1 – Công thức cơ bản cho hàm DATEDIF
Hãy thử 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 ở ô A2 và B2, và sẽ tính sự chênh lệch giữa chúng bằng công thức:
=DATEDIF(A2, B2, "d")

Công thức đặt unit là “d” nghĩa là kết quả cuối cùng sẽ được đưa ra dưới dạng số ngày hoàn chỉnh. Hàm sẽ trả về sự chênh lệch tính bằng ngày giữa hai ngày được cung cấp trong hai đối số đầu tiên. Trong ví dụ của chúng ta, sự chênh lệch là 1985 ngày.
Lưu ý rằng phép tính này cũng có thể thực hiện mà không cần dùng hàm DATEDIF. Excel lưu trữ ngày dưới dạng số sê-ri, và việc trừ một số sê-ri cho số sê-ri khác sẽ trực tiếp trả về số ngày chênh lệch.
Ví dụ 2 – Đếm sự chênh lệch theo ngày (tất cả các biến thể)
Bây giờ chúng ta sẽ khám phá các cách khác nhau để lấy kết quả theo ngày.
=DATEDIF(A2, B2, "d")
=DATEDIF(A3, B3, "yd")
=DATEDIF(A4, B4, "md")

- Khi dùng “yd” trong đối số unit, sự chênh lệch được tính theo ngày nhưng bỏ qua thành phần năm. Nói cách khác, Excel tính như thể ngày bắt đầu và ngày kết thúc nằm trong cùng một năm, vì vậy giá trị giảm từ 1985 xuống 158.
- Khi dùng “md” trong đối số unit, sự chênh lệch vẫn được tính bằng ngày nhưng bỏ qua cả tháng và năm. Excel tính như thể cả hai ngày đều nằm trong cùng một tháng và cùng một năm, nên giá trị giảm tiếp xuống 5.
Ví dụ 3 – Đếm sự chênh lệch theo tháng (tất cả các biến thể)
Tiếp tục, chúng ta sẽ tính sự chênh lệch theo tháng.
=DATEDIF(A2, B2, "m")
=DATEDIF(A3, B3, "ym")

- Khi dùng “m”, Excel trả về số tháng nguyên giữa hai ngày, không quan tâm đến số ngày còn lại. Trong ví dụ, công thức trả về 65 tháng.
- Khi dùng “ym”, Excel bỏ qua thành phần năm và chỉ tính số tháng còn lại trong năm cuối cùng, vì vậy kết quả giảm xuống 5.
Ví dụ 4 – Đếm sự chênh lệch theo năm
Có duy nhất một cách để tính số năm chênh lệch:
=DATEDIF(A2, B2, "y")

Excel trả về số năm đầy đủ giữa hai ngày; trong ví dụ là 5 năm. Giá trị này không bao gồm phần thập phân của năm vì DATEDIF chỉ tính năm nguyên. Nếu bạn muốn độ chính xác hơn, có thể dùng hàm YEARFRAC:
=YEARFRAC(A2, B2)

Hàm YEARFRAC cho ra kết quả 5,43 năm.
Ví dụ 5 – Kết hợp năm, tháng và ngày
Bây giờ chúng ta sẽ kết hợp ba kết quả lại với nhau:
=DATEDIF(A2, B2, "y") & " year(s), " & DATEDIF(A2, B2, "ym") & " month(s), " & DATEDIF(A2, B2, "md") & " day(s)"

Công thức dài nhưng thực chất là ba hàm DATEDIF được nối lại bằng toán tử & (nối chuỗi). Các hàm riêng lẻ đã được giải thích ở các ví dụ trên:
- Hàm DATEDIF đầu tiên tính số năm hoàn chỉnh.
- Hàm thứ hai tính số tháng không tính năm (vì năm đã được tính ở bước 1).
- Hàm thứ ba tính số ngày không tính tháng và năm (vì tháng và năm đã được tính ở hai bước trước).
- Các chuỗi văn bản (” year(s), “, ” month(s), “, ” day(s)”) chỉ để trình bày đẹp mắt, không ảnh hưởng tới tính toán.
Kết quả cuối cùng là 5 năm, 5 tháng, 5 ngày.
Ví dụ 6 – Tính tuổi từ ngày sinh
Áp dụng công thức trên để tính tuổi của một người:
=DATEDIF(A2, TODAY(), "y") & " year(s), " & DATEDIF(A2, TODAY(), "ym") & " month(s), " & DATEDIF(A2, TODAY(), "md") & " day(s)"

Sự khác biệt duy nhất so với ví dụ trước là việc dùng hàm TODAY() làm end_date, vì chúng ta muốn tính khoảng thời gian từ ngày sinh (DOB) cho tới ngày hiện tại.
Kết quả mẫu là 26 năm, 3 tháng, 10 ngày.
Với những ví dụ trên, bạn đã nắm vững cách sử dụng hàm DATEDIF trong mọi tình huống. Hãy luyện tập các công thức này cho đến khi bạn cảm thấy tự tin. Tuy nhiên, khi thực hành, không nên sử dụng dữ liệu cá nhân nhạy cảm (ví dụ ngày sinh của người thân) để tránh vi phạm quyền riêng tư. Khi đã thành thạo DATEDIF, chúng ta sẽ tiếp tục khám phá các hàm Excel khác sẵn sàng để khai thác.







