=DATE(2026,3,15) trả về ngày 15 tháng 3 năm 2026. Ba tham số lần lượt là năm, tháng và ngày, theo đúng thứ tự đó, dưới dạng số hoặc tham chiếu ô. Các hàm ngược lại, YEAR, MONTH và DAY, tách một ngày ra thành ba số đó.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Year | Month | Day | Date |
| 2 | 2026 | 3 | 15 | 2026-03-15 |
| 3 | 2026 | 12 | 31 | 2026-12-31 |
| 4 | 2027 | 1 | 1 | 2027-01-01 |
| 5 | 2024 | 2 | 29 | 2024-02-29 |
Mỗi hàng trở thành một ngày thật mà Excel có thể sắp xếp, trừ và định dạng. Đổi tháng trong B2 thành 7 thì D2 thành 2026-07-15. Thứ tự là cố định, năm trước, dù nước bạn viết ngày theo thứ tự nào: =DATE(15,3,2026) không phải ngày 15 tháng 3.
YEAR, MONTH và DAY: tách một ngày ra
Mỗi hàm trả về một phần của ngày dưới dạng số. Đây là cách thường dùng để nhóm hoặc lọc theo năm hay theo tháng, chẳng hạn trong một cột phụ mà SUMIF hoặc Pivot Table đọc.
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Date | Year | Month | Day | Month name |
| 2 | 2026-03-15 | 2026 | 3 | 15 | March |
| 3 | 2025-11-02 | 2025 | 11 | 2 | November |
| 4 | 2024-02-29 | 2024 | 2 | 29 | February |
Hàng đầu tiên cho 2026, 3 và 15. MONTH trả về một số; để lấy tên tháng, dùng TEXT với "mmmm" (March) hoặc "mmm" (Mar), xem hàm TEXT.
Tháng 13, ngày 0: cách DATE tự chuyển tiếp
DATE chấp nhận tháng lớn hơn 12 và ngày vượt quá cuối tháng, rồi chuyển phần dư sang kỳ tiếp theo như một cuốn lịch. Tháng 13 là tháng 1 của năm sau, còn ngày 0 là ngày cuối của tháng trước. Nhờ vậy, ngày đầu và ngày cuối của bất kỳ tháng nào chỉ cần một công thức một dòng.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Formula | Result | Date | |
| 2 | Month 13 | 2027-01-01 | 2026-02-17 | |
| 3 | February 30 | 2026-03-02 | ||
| 4 | Day 0 of March | 2026-02-28 | ||
| 5 | First of the month | 2026-02-01 | ||
| 6 | Last of the month | 2026-02-28 |
DATE(2026,13,1) là 2027-01-01, ngày 30 tháng 2 thành 2026-03-02, và ngày 0 của tháng 3 là 2026-02-28. Hàng 5 và 6 dùng ngày trong D2: đổi nó thành ngày bất kỳ, bạn sẽ có ngày đầu và ngày cuối của tháng đó, kể cả năm nhuận (thử 2024-02-17). EOMONTH làm được việc tương tự cho ngày cuối tháng, xem cộng ngày và tháng.
Chuyển văn bản thành ngày
Ngày nhập từ hệ thống khác thường đến dưới dạng văn bản. Excel không tính toán ngày trên văn bản được, nên hãy chuyển đổi trước. DATEVALUE đọc văn bản ở định dạng Excel nhận ra được, chẳng hạn 2026-03-15. Các mã như 20260315 và ngày kiểu châu Âu như 15.03.2026 cần được cắt ra bằng LEFT, MID và RIGHT rồi ghép lại bằng DATE.
| A | B | |
|---|---|---|
| 1 | Text | Date |
| 2 | 2026-03-15 | 2026-03-15 |
| 3 | 20260315 | 2026-03-15 |
| 4 | 15.03.2026 | 2026-03-15 |
Cả ba hàng đều trả về 2026-03-15. LEFT, MID và RIGHT trả về văn bản, và DATE tự chuyển "2026" và "03" thành số. DATEVALUE phụ thuộc vào cài đặt ngày của hệ thống: "3/15/2026" được đọc là ngày 15 tháng 3 với cài đặt Mỹ và báo lỗi #VALUE! ở nơi viết ngày trước, như Việt Nam. Với một cột chỉ cần đổi một lần, Data > Text to Columns chuyển đổi tại chỗ mà không cần công thức: ở bước 3, chọn Date và thứ tự mà văn bản đang dùng (DMY cho 15.03.2026).
Luyện tập: tạo ngày
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Year | Month | Day | Date |
| 2 | 2026 | 4 | 17 |
Đến lượt bạn: Trong D2, tạo ngày từ năm trong A2, tháng trong B2 và ngày trong C2.
| A | B | |
|---|---|---|
| 1 | Code | Date |
| 2 | 20260917 |
Đến lượt bạn: A2 chứa ngày dưới dạng văn bản theo mẫu yyyymmdd. Trong B2, chuyển nó thành một ngày thật.
Lỗi thường gặp: năm có hai chữ số
DATE đọc năm từ 0 đến 1899 như một khoảng cộng thêm vào 1900, nên năm hai chữ số sẽ rơi vào sai thế kỷ mà không báo lỗi gì.
| A | B | C | |
|---|---|---|---|
| 1 | Year | DATE | Fixed |
| 2 | 26 | 1926-03-15 | 2026-03-15 |
=DATE(26,3,15) trả về 1926-03-15, không phải 2026. Hãy cộng 2000 khi dữ liệu gốc có năm hai chữ số, như ở C2, hoặc tốt hơn, sửa dữ liệu gốc để nó chứa đủ năm.
Câu hỏi thường gặp
Hàm DATE trong Excel hoạt động thế nào?
=DATE(year,month,day) trả về một ngày từ ba số: =DATE(2026,3,15) là ngày 15 tháng 3 năm 2026. Các tham số có thể là tham chiếu ô, chẳng hạn =DATE(A2,B2,C2).
Làm sao lấy năm, tháng hoặc ngày từ một ngày?
=YEAR(A2), =MONTH(A2) và =DAY(A2) trả về từng phần dưới dạng số. Để lấy tên tháng, dùng =TEXT(A2,"mmmm").
Làm sao lấy ngày đầu tháng trong Excel?
=DATE(YEAR(A2),MONTH(A2),1) trả về ngày đầu tiên của tháng chứa A2. =DATE(YEAR(A2),MONTH(A2)+1,0) trả về ngày cuối tháng, vì ngày 0 của một tháng là ngày cuối của tháng trước.
Làm sao chuyển văn bản thành ngày trong Excel?
Nếu văn bản ở định dạng Excel nhận ra được, =DATEVALUE(A2) sẽ chuyển nó. Với các mã như 20260315, hãy cắt từng phần ra rồi tạo lại ngày: =DATE(LEFT(A2,4),MID(A2,5,2),RIGHT(A2,2)).
Điều gì xảy ra nếu tháng trong DATE lớn hơn 12?
DATE chuyển phần dư sang năm sau: =DATE(2026,13,1) là 2027-01-01 và =DATE(2026,14,1) là 2027-02-01. Ngày cũng được chuyển theo cách tương tự, còn giá trị 0 hoặc âm sẽ lùi về trước.