Các hàm ngày tháng năm trong Excel gồm TODAY (ngày hôm nay), DAY, MONTH, YEAR (tách ngày, tháng, năm), DATE (ghép ngày từ ba số), DATEDIF (khoảng cách giữa hai ngày) và WEEKDAY (thứ trong tuần). Chúng giúp tính tuổi, thâm niên, hạn hợp đồng mà không phải đếm tay.
Ví dụ nhanh: =YEAR(B2) → 1990 (năm sinh của An trong bảng ví dụ)
Nguồn: tài liệu hàm TODAY, DAY, MONTH, YEAR, DATE, DATEDIF, WEEKDAY của Microsoft, đối chiếu ngày 07/10/2026. Áp dụng cho Excel cho Microsoft 365, Excel 2021, 2019, 2016 và các bản cũ hơn.

Cú pháp các hàm ngày tháng
Excel lưu ngày dưới dạng số (số ngày tính từ 1/1/1900), nên có thể cộng trừ ngày như cộng trừ số. Ngày hiển thị theo định dạng của máy: máy cài định dạng Việt Nam hiện ngày/tháng/năm.
=TODAY() =DAY(ngày) =MONTH(ngày) =YEAR(ngày) =DATE(năm; tháng; ngày) =DATEDIF(ngày_đầu; ngày_cuối; "đơn_vị") =WEEKDAY(ngày; [kiểu])
| Đối số | Bắt buộc? | Ý nghĩa |
|---|---|---|
ngày (serial_number) |
Có | Ô chứa ngày hoặc công thức trả về ngày, ví dụ B2, DATE(2026;10;7). |
năm; tháng; ngày (DATE) |
Có | Ba số ghép thành một ngày; tháng lớn hơn 12 tự cộng sang năm sau. |
"đơn_vị" (DATEDIF) |
Có | "Y" số năm tròn, "M" số tháng tròn, "D" số ngày, "YM" số tháng lẻ sau khi bỏ năm. |
kiểu (WEEKDAY) |
Không | 1 (mặc định): Chủ Nhật = 1; 2: Thứ Hai = 1, Chủ Nhật = 7. |
Ví dụ 1: Tách ngày, tháng, năm
Bảng nhân viên ở A1:C5. DAY, MONTH, YEAR lấy từng phần của ngày sinh của An (15/05/1990).
| A | B | C | |
|---|---|---|---|
| 1 | Nhân viên | Ngày sinh | Ngày vào làm |
| 2 | An | 15/05/1990 | 01/03/2018 |
| 3 | Bình | 22/11/1995 | 10/07/2020 |
| 4 | Chi | 03/01/1988 | 15/09/2015 |
| 5 | Dũng | 30/08/2000 | 02/01/2024 |
| Ô | Công thức | Kết quả | Giải thích |
|---|---|---|---|
| E2 | =DAY(B2) |
15 | Ngày |
| F2 | =MONTH(B2) |
5 | Tháng |
| G2 | =YEAR(B2) |
1.990 | Năm |
Ví dụ 2: Tính ngày hết thử việc bằng DATE
Cộng 6 tháng vào ngày vào làm: DATE ghép lại năm, tháng + 6, ngày.
| A | B | C | |
|---|---|---|---|
| 1 | Nhân viên | Ngày sinh | Ngày vào làm |
| 2 | An | 15/05/1990 | 01/03/2018 |
| 3 | Bình | 22/11/1995 | 10/07/2020 |
| 4 | Chi | 03/01/1988 | 15/09/2015 |
| 5 | Dũng | 30/08/2000 | 02/01/2024 |
| Ô | Công thức | Kết quả | Giải thích |
|---|---|---|---|
| E2 | =DATE(YEAR(C2);MONTH(C2)+6;DAY(C2)) |
01/09/2018 | An: 01/03/2018 + 6 tháng |
| E5 | =DATE(YEAR(C5);MONTH(C5)+6;DAY(C5)) |
02/07/2024 | Dũng: 02/01/2024 + 6 tháng |

Ví dụ 3: Tính tuổi tại một ngày cho trước
DATEDIF với đơn vị “Y” đếm số năm tròn từ ngày sinh tới 07/10/2026. Thay DATE(2026;10;7) bằng TODAY() để luôn tính tới hôm nay.
| A | B | C | |
|---|---|---|---|
| 1 | Nhân viên | Ngày sinh | Ngày vào làm |
| 2 | An | 15/05/1990 | 01/03/2018 |
| 3 | Bình | 22/11/1995 | 10/07/2020 |
| 4 | Chi | 03/01/1988 | 15/09/2015 |
| 5 | Dũng | 30/08/2000 | 02/01/2024 |
| Ô | Công thức | Kết quả | Giải thích |
|---|---|---|---|
| E2 | =DATEDIF(B2;DATE(2026;10;7);"Y") |
36 | An |
| E3 | =DATEDIF(B3;DATE(2026;10;7);"Y") |
30 | Bình chưa tới sinh nhật 22/11 |
| E4 | =DATEDIF(B4;DATE(2026;10;7);"Y") |
38 | Chi |
| E5 | =DATEDIF(B5;DATE(2026;10;7);"Y") |
26 | Dũng |
Ví dụ 4: Thâm niên theo năm và tháng
Kết hợp “Y” và “YM” để ra “x năm y tháng” tính tới 07/10/2026.
| A | B | C | |
|---|---|---|---|
| 1 | Nhân viên | Ngày sinh | Ngày vào làm |
| 2 | An | 15/05/1990 | 01/03/2018 |
| 3 | Bình | 22/11/1995 | 10/07/2020 |
| 4 | Chi | 03/01/1988 | 15/09/2015 |
| 5 | Dũng | 30/08/2000 | 02/01/2024 |
| Ô | Công thức | Kết quả | Giải thích |
|---|---|---|---|
| E2 | =DATEDIF(C2;DATE(2026;10;7);"Y")&" năm "&DATEDIF(C2;DATE(2026;10;7);"YM")&" tháng" |
8 năm 7 tháng | An vào làm 01/03/2018 |
| E5 | =DATEDIF(C5;DATE(2026;10;7);"Y")&" năm "&DATEDIF(C5;DATE(2026;10;7);"YM")&" tháng" |
2 năm 9 tháng | Dũng vào làm 02/01/2024 |
Ví dụ 5: Biết ngày là thứ mấy
WEEKDAY kiểu 2 trả về 1 cho Thứ Hai, 7 cho Chủ Nhật; TEXT với định dạng “dddd” trả về tên thứ theo ngôn ngữ của Excel.
| A | B | C | |
|---|---|---|---|
| 1 | Nhân viên | Ngày sinh | Ngày vào làm |
| 2 | An | 15/05/1990 | 01/03/2018 |
| 3 | Bình | 22/11/1995 | 10/07/2020 |
| 4 | Chi | 03/01/1988 | 15/09/2015 |
| 5 | Dũng | 30/08/2000 | 02/01/2024 |
| Ô | Công thức | Kết quả | Giải thích |
|---|---|---|---|
| E2 | =WEEKDAY(DATE(2026;10;7);2) |
3 | 07/10/2026 là Thứ Tư |
| E3 | =WEEKDAY(C2;2) |
4 | 01/03/2018 là Thứ Năm |
Lỗi thường gặp với hàm ngày tháng
| Lỗi | Nguyên nhân | Cách sửa |
|---|---|---|
#VALUE! |
Ngày được nhập dạng văn bản không đúng định dạng máy (ví dụ 07/15/2026 trên máy ngày/tháng/năm). | Nhập theo định dạng của máy, hoặc dùng DATE(năm; tháng; ngày). |
#NUM! với DATEDIF |
Ngày đầu lớn hơn ngày cuối. | Đổi chỗ hai đối số. |
Ra số 5 chữ số thay vì ngày |
Ô kết quả đang định dạng số. | Định dạng ô thành Date (Ctrl+1 > Number > Date). |
DAY, MONTH ra sai |
Excel hiểu 05/07 là 7 tháng 5 hay 5 tháng 7 tuỳ định dạng vùng của Windows. | Kiểm tra định dạng vùng; dùng DATE để nhập chắc chắn. |
Tuổi tăng sớm một năm |
Tính tuổi bằng YEAR(TODAY())-YEAR(B2), bỏ qua tháng sinh. | Dùng DATEDIF(B2;TODAY();”Y”). |
TODAY và NOW khác nhau thế nào?
TODAY trả về ngày hôm nay, NOW trả về cả ngày và giờ hiện tại. Cả hai tự cập nhật mỗi khi bảng tính tính lại. Muốn ghi cố định ngày hôm nay (không đổi về sau), nhấn Ctrl + ;; ghi cố định giờ hiện tại, nhấn Ctrl + Shift + ;.
Theo tài liệu Microsoft, DATEDIF không hiện trong danh sách gợi ý hàm nhưng vẫn dùng được. Xem thêm các nhóm hàm khác trong bài các hàm trong Excel.
Tải file Excel mẫu
File mẫu gồm 5 trang tính, mỗi trang là một ví dụ ở trên với công thức để sẵn; Excel tự tính lại khi mở. Tải file Excel mẫu (.xlsx).
Câu hỏi thường gặp
Làm sao tính số ngày giữa hai ngày?
Trừ trực tiếp: =C2-B2, hoặc =DATEDIF(B2;C2;"D"). Định dạng ô kết quả là số.
Làm sao tính ngày làm việc, bỏ Thứ Bảy, Chủ Nhật?
Dùng NETWORKDAYS, ví dụ =NETWORKDAYS(DATE(2026;10;5);DATE(2026;10;16)) trả về 10.
Vì sao gõ ngày tháng Excel lại hiện thành chữ?
Excel không nhận ra định dạng ngày theo cài đặt máy nên giữ nguyên là văn bản (căn trái). Gõ đúng thứ tự ngày/tháng/năm của máy hoặc dùng hàm DATE.
Xem thêm các thủ thuật khác tại ITGO (thủ thuật máy tính & Excel).



