Bài 14 · THVP
DAY, MONTH, YEAR, TODAY, NOW, DATE, TEXT kèm bảng mẫu và bài tập thực hành
🎯 Mục tiêu bài học
- Hiểu cách Excel lưu trữ ngày tháng và nhận biết ô ngày hợp lệ.
- Dùng DAY, MONTH, YEAR để tách ngày, tháng, năm từ một ô ngày.
- Dùng TODAY và NOW để lấy ngày hiện tại, ngày giờ hiện tại và đóng dấu thời gian.
- Dùng DATE để ghép năm - tháng - ngày thành một ngày hoàn chỉnh.
- Dùng TEXT để đổi ngày thành văn bản theo mẫu dd/mm/yyyy, tên thứ, tên tháng.
- Tính tuổi, thâm niên, hạn thanh toán và số ngày còn lại.
- Hoàn thành 2 bài tập mẫu về hồ sơ nhân sự và theo dõi đơn hàng.
📋 Bảng mẫu để thực hành
Nhập lại bảng mẫu trong Excel, sau đó thực hiện các yêu cầu bên phải.
| Hàng | B — Mã NV | C — Họ và tên | D — Ngày sinh | E — Ngày vào làm | F — Phòng ban |
|---|
| 4 | NV001 | Nguyễn Văn An | 15/04/1990 | 01/03/2018 | Kinh doanh |
| 5 | NV002 | Trần Thị Bình | 22/11/1992 | 12/07/2019 | Nhân sự |
| 6 | NV003 | Lê Quốc Cường | 05/01/1988 | 25/12/2016 | Kỹ thuật |
| 7 | NV004 | Phạm Thị Dung | 30/07/1995 | 08/09/2021 | Kế toán |
| 8 | NV005 | Hoàng Văn Đức | 12/03/1991 | 03/02/2020 | Kinh doanh |
| 9 | NV006 | Vũ Thị Hương | 17/09/1993 | 19/05/2022 | Marketing |
📅 Ghi nhớ nhanh cấu trúc 7 hàm ngày tháng
| Hàm | Cấu trúc | Công dụng |
|---|
| DAY | =DAY(ngày) | Lấy phần ngày (1 – 31) |
| MONTH | =MONTH(ngày) | Lấy phần tháng (1 – 12) |
| YEAR | =YEAR(ngày) | Lấy phần năm (4 chữ số) |
| TODAY | =TODAY() | Ngày hiện tại, không có đối số |
| NOW | =NOW() | Ngày và giờ hiện tại |
| DATE | =DATE(năm; tháng; ngày) | Ghép 3 số thành một ngày hoàn chỉnh |
| TEXT | =TEXT(giá_trị; "mẫu_định_dạng") | Đổi ngày/số thành văn bản theo mẫu |
💡 Dấu ngăn cách đối số là ; hoặc , tuỳ cài đặt máy. Nếu Excel báo lỗi công thức, hãy đổi sang dấu còn lại.
Hướng dẫn chi tiết 7 hàm ngày tháng trong Excel
Mỗi phần đều nêu cấu trúc hàm, cách sử dụng từng bước và ảnh minh hoạ thực tế trong Excel.
Hàm DAY — lấy phần ngày
- Cấu trúc: =DAY(ngày). Công dụng: trả về số ngày trong tháng, từ 1 đến 31.
- Nhấn vào ô kết quả, ví dụ ô G4 ở cột Ngày.
- Gõ =DAY( rồi nhấn chuột vào ô D4 chứa ngày sinh.
- Đóng ngoặc ) và nhấn Enter — 15/04/1990 cho ra 15.
- Kéo Fill Handle (ô vuông nhỏ góc dưới phải) xuống hết cột.
- Nếu kết quả hiện ra dạng ngày tháng, chọn ô → Ctrl + 1 → Number → General.
- Nếu báo lỗi #VALUE!, ô gốc đang là văn bản: chọn cột → Data → Text to Columns → Finish để đổi về ngày thật.
💡 Lọc nhanh danh sách sinh nhật trong ngày: =AND(DAY(D4)=DAY(TODAY());MONTH(D4)=MONTH(TODAY())).
Hình 1: Hàm DAY — lấy phần ngàyHàm MONTH — lấy phần tháng
- Cấu trúc: =MONTH(ngày). Công dụng: trả về số tháng từ 1 đến 12.
- Nhấn ô kết quả, gõ =MONTH( rồi chọn ô chứa ngày, ví dụ D4.
- Đóng ngoặc ) và nhấn Enter — 15/01/2024 cho ra 1.
- Kéo Fill Handle xuống hết cột để lấy tháng cho toàn bộ danh sách.
- Dùng cột Tháng vừa tạo để tổng hợp doanh thu theo tháng bằng SUMIF hoặc PivotTable.
- Hiện tên tháng thay vì số: =TEXT(D4;"mmmm") hoặc ="Tháng "&MONTH(D4).
💡 Tính doanh thu tháng 3: =SUMIF(cột_tháng;3;cột_thành_tiền).
Hình 2: Hàm MONTH — lấy phần thángHàm YEAR — lấy phần năm
- Cấu trúc: =YEAR(ngày). Công dụng: trả về năm gồm 4 chữ số.
- Nhấn ô kết quả, gõ =YEAR( rồi chọn ô D4.
- Đóng ngoặc ) và nhấn Enter — 15/06/1990 cho ra 1990.
- Kéo Fill Handle xuống hết cột.
- Tính tuổi gần đúng: =YEAR(TODAY())-YEAR(D4).
- Tính tuổi chính xác theo ngày: =DATEDIF(D4;TODAY();"y").
- Lưu ý: kết quả là số nên có thể sắp xếp, lọc và tính toán bình thường.
💡 Đếm nhân viên sinh năm 1990: =COUNTIF(cột_năm_sinh;1990).
Hình 3: Hàm YEAR — lấy phần nămHàm TODAY — ngày hiện tại
- Cấu trúc: =TODAY(). Hàm này không có đối số nhưng vẫn phải gõ đủ hai dấu ngoặc.
- Nhấn vào ô muốn hiện ngày lập báo cáo, ví dụ ô B2.
- Gõ =TODAY() rồi nhấn Enter — ô hiện ngày hôm nay theo đồng hồ máy tính.
- Chỉnh kiểu hiển thị: Ctrl + 1 → Number → Custom → gõ dd/mm/yyyy.
- Kết quả tự cập nhật mỗi khi mở file hoặc nhấn F9 — đây là hàm động (volatile).
- Tính số ngày còn lại đến hạn: =Ngày_hết_hạn-TODAY().
- Muốn giữ ngày cố định (không đổi), gõ tay hoặc nhấn Ctrl + ; (dấu chấm phẩy).
💡 Cảnh báo hoá đơn quá hạn bằng Conditional Formatting với công thức =TODAY()>ngày_hết_hạn.
Hình 4: Hàm TODAY — ngày hiện tạiHàm NOW — ngày và giờ hiện tại
- Cấu trúc: =NOW(). Công dụng: trả về cả ngày lẫn giờ hiện tại của máy tính.
- Nhấn ô cần đóng dấu thời gian, gõ =NOW() rồi nhấn Enter.
- Nếu ô chỉ hiện ngày, chọn ô → Ctrl + 1 → Custom → gõ dd/mm/yyyy hh:mm.
- Chỉ lấy phần giờ: =NOW()-TODAY() rồi định dạng ô kiểu Time (hh:mm).
- Kết quả tự cập nhật khi bảng tính tính lại; nhấn F9 để làm mới ngay.
- Muốn ghi giờ cố định lúc nhập liệu, nhấn Ctrl + Shift + ; thay vì dùng hàm.
💡 Ghép ngày giờ vào tiêu đề báo cáo: ="Cập nhật lúc "&TEXT(NOW();"hh:mm dd/mm/yyyy").
Hình 5: Hàm NOW — ngày và giờ hiện tạiHàm DATE — ghép năm, tháng, ngày thành một ngày
- Cấu trúc: =DATE(năm; tháng; ngày). Công dụng: tạo một giá trị ngày thật từ ba số rời.
- Nhấn ô kết quả, gõ =DATE( rồi chọn ô chứa Năm.
- Gõ ; rồi chọn ô chứa Tháng, gõ ; rồi chọn ô chứa Ngày.
- Đóng ngoặc ) và nhấn Enter — 2024, 6, 15 cho ra 15/06/2024.
- Kéo Fill Handle xuống hết cột và định dạng ô kiểu Date cho đẹp.
- Excel tự dồn số vượt phạm vi: DATE(2024;13;1) cho ra 01/01/2025.
- Tính ngày hết hạn sau 30 ngày: =DATE(YEAR(D4);MONTH(D4);DAY(D4)+30).
- Ghép ngày từ chuỗi dạng 20240615: =DATE(LEFT(B4;4);MID(B4;5;2);RIGHT(B4;2)).
💡 Lấy ngày cuối tháng: =DATE(YEAR(D4);MONTH(D4)+1;0) — số 0 nghĩa là ngày trước mùng 1 tháng sau.
Hình 6: Hàm DATE — ghép năm, tháng, ngày thành một ngàyHàm TEXT — đổi ngày thành văn bản theo mẫu
- Cấu trúc: =TEXT(giá_trị; "mẫu_định_dạng"). Công dụng: đổi ngày hoặc số thành chuỗi văn bản theo đúng mẫu mong muốn.
- Nhấn ô kết quả, gõ =TEXT( rồi chọn ô D4 chứa ngày.
- Gõ ; rồi nhập mẫu trong dấu nháy kép, ví dụ "dd/mm/yyyy".
- Đóng ngoặc ) và nhấn Enter — kết quả canh trái vì đã là văn bản.
- Một số mẫu hay dùng: "dd/mm/yyyy", "mm/yyyy", "dddd" (thứ), "mmmm" (tên tháng), "hh:mm".
- Định dạng số tiền: =TEXT(F4;"#,##0")&" đ" cho ra 15,250,000 đ.
- Dùng TEXT khi cần ghép ngày vào câu chữ, vì ghép trực tiếp sẽ ra dãy số khó đọc.
- Lưu ý: kết quả là văn bản nên không dùng để cộng trừ ngày được nữa.
💡 Câu thông báo tự động: ="Hợp đồng ký ngày "&TEXT(E4;"dd/mm/yyyy").
Hình 7: Hàm TEXT — đổi ngày thành văn bản theo mẫu📝 Bài tập mẫu để luyện tập
Hai bài tập dưới đây bao quát cả 7 hàm vừa học. Hãy tự làm trước rồi mới mở phần đáp án gợi ý.
Bài tập 1 — Hồ sơ nhân sự
Nhập bảng sau vào Excel (tiêu đề ở hàng 3, dữ liệu từ hàng 4) rồi dùng DAY, MONTH, YEAR, TODAY để phân tích ngày tháng.
Hồ sơ nhân sự phòng Kinh doanh| Hàng | B — Mã NV | C — Họ và tên | D — Ngày sinh | E — Ngày vào làm |
|---|
| 4 | KD001 | Nguyễn Thị Mai | 15/04/1990 | 01/03/2018 |
| 5 | KD002 | Trần Quốc Bảo | 22/11/1992 | 12/07/2019 |
| 6 | KD003 | Lê Hoàng Nam | 05/01/1988 | 25/12/2016 |
| 7 | KD004 | Phạm Thu Hà | 30/07/1995 | 08/09/2021 |
| 8 | KD005 | Võ Minh Trí | 12/03/1991 | 03/02/2020 |
Xem đáp án gợi ý
- H1:
=TODAY() - F4:
=DAY(D4) - G4:
=MONTH(D4) - H4:
=YEAR(D4) - I4:
=YEAR(TODAY())-YEAR(D4) - J4:
=YEAR(TODAY())-YEAR(E4) - K4:
=TEXT(E4;"dd/mm/yyyy")
Bài tập 2 — Theo dõi đơn hàng và hạn thanh toán
Nhập bảng sau rồi dùng DATE, TEXT, TODAY, NOW để lập bảng theo dõi hạn thanh toán.
Bảng theo dõi đơn hàng tháng 6| Hàng | B — Mã đơn | C — Khách hàng | D — Năm | E — Tháng | F — Ngày | G — Trị giá |
|---|
| 4 | DH001 | Công ty TNHH An Phát | 2024 | 5 | 15 | 15,250,000 |
| 5 | DH002 | Công ty CP Bình Minh | 2024 | 5 | 22 | 8,750,000 |
| 6 | DH003 | Công ty TNHH Đại Nam | 2024 | 6 | 1 | 12,400,000 |
| 7 | DH004 | Công ty CP Thịnh Vượng | 2024 | 6 | 10 | 5,980,000 |
| 8 | DH005 | Công ty TNHH Phú Quý | 2024 | 6 | 18 | 9,300,000 |
Xem đáp án gợi ý
- H4:
=DATE(D4;E4;F4) - I4:
=H4+30 - J4:
=I4-TODAY() - K4:
=TEXT(H4;"dddd") - L4:
=CONCAT(B4;" - đặt ngày ";TEXT(H4;"dd/mm/yyyy");" - ";TEXT(G4;"#,##0");" đ") - B1:
=NOW()
Tài liệu đang được cập nhật.