Hàm Excel Ngày Tháng Năm: Hướng Dẫn Chi Tiết Từ A Đến Z Để Xử Lý Thời Gian Trong Bảng Tính

Mục lục bài viết

Mở đầu: Tại sao ngày tháng năm lại quan trọng trong Excel?

Trong môi trường làm việc hiện đại, hầu hết các doanh nghiệp, tổ chức và cá nhân đều sử dụng Microsoft Excel để quản lý, phân tích và báo cáo dữ liệu. Trong số các loại dữ liệu, ngày tháng năm (date) là một trong những yếu tố quan trọng nhất vì nó liên quan trực tiếp đến:

  1. Quản lý dự án – Theo dõi tiến độ, deadline, thời gian hoàn thành.
  2. Kế toán – tài chính – Ghi nhận giao dịch, tính lãi suất, khấu hao, thuế.
  3. Bán hàng – CRM – Lịch sử mua hàng, thời gian chăm sóc khách hàng.
  4. Nhân sự – Lương, nghỉ phép, ngày công, tuổi nhân viên.
  5. Phân tích dữ liệu – Đánh giá xu hướng theo thời gian, dự báo, tạo biểu đồ thời gian.

Vì vậy, việc nắm vững các hàm Excel ngày tháng năm không chỉ giúp bạn thao tác nhanh chóng, chính xác mà còn nâng cao hiệu quả ra quyết định. Bài viết dưới đây sẽ cung cấp một kho tàng hàm ngày tháng năm, giải thích cách hoạt động, ví dụ thực tế và mẹo tối ưu hoá.

1. Kiến thức nền tảng: Excel lưu trữ ngày tháng như thế nào?

Trước khi đi vào các hàm, cần hiểu cách Excel lưu trữ ngày tháng:

  • Ngày trong Excel là một số nguyên: Mỗi ngày được tính bằng số ngày kể từ ngày 1/1/1900 (trong hệ thống Windows) hoặc 1/1/1904 (trong hệ thống Mac). Ví dụ, ngày 1/1/1900 = 1, 2/1/1900 = 2, …, 31/12/2026 ≈ 45204.
  • Thời gian (giờ, phút, giây) là phần thập phân: 0.5 tương đương 12:00 PM (nửa ngày), 0.25 = 6:00 AM, 0.75 = 18:00.
  • Ngày + thời gian = giá trị thập phân: 45204.75 = 31/12/2026 18:00.

Điều này cho phép thực hiện các phép tính cộng/trừ trực tiếp (ví dụ: =A1+7 = ngày sau 7 ngày). Tuy nhiên, để hiển thị dưới dạng “dd/mm/yyyy” hoặc “hh:mm:ss”, chúng ta cần định dạng ô hoặc dùng hàm TEXT.

2. Các hàm cơ bản để tạo và trích xuất ngày tháng

2.1. Hàm DATE(year, month, day)

  • Công dụng: Tạo một giá trị ngày từ ba thành phần năm, tháng, ngày.
  • Cú pháp: =DATE(2026, 6, 21)
  • Lưu ý: Excel tự động điều chỉnh nếu tháng >12 hoặc ngày > số ngày trong tháng (ví dụ: =DATE(2026, 13, 1) trả về 01/01/2026).

Ví dụ thực tế
Bạn có cột “Năm” (cột A) và “Tháng” (cột B), muốn tạo ngày đầu tháng:

=DATE(A2, B2, 1)

2.2. Hàm TIME(hour, minute, second)

  • Công dụng: Tạo thời gian trong ngày.
  • Cú pháp: =TIME(14,30,0) → 14:30:00.

Kết hợp DATE và TIME để tạo datetime:

=DATE(2026,6,21)+TIME(14,30,0)

2.3. Hàm NOW() và TODAY()

  • TODAY() trả về ngày hiện tại (không có thời gian).
  • NOW() trả về ngày và thời gian hiện tại.

Lưu ý: Hai hàm này là volatile, tức là Excel sẽ tính lại chúng mỗi khi có bất kỳ thay đổi nào trong workbook, có thể làm chậm nếu dùng quá nhiều.

2.4. Hàm YEAR(), MONTH(), DAY()

  • Trích xuất thành phần năm, tháng, ngày từ một giá trị ngày.
  • Cú pháp: =YEAR(A1), =MONTH(A1), =DAY(A1).

2.5. Hàm HOUR(), MINUTE(), SECOND()

  • Tương tự, nhưng cho phần thời gian.
  • Cú pháp: =HOUR(A1), =MINUTE(A1), =SECOND(A1).

2.6. Hàm EOMONTH(start_date, months)

  • Trả về ngày cuối cùng của tháng, dựa trên start_date và số tháng offset.
  • Ví dụ: =EOMONTH(A1,0) → cuối tháng của ngày trong A1.
  • Thường dùng để tính deadline cuối tháng hoặc kỳ thanh toán.

2.7. Hàm EDATE(start_date, months)

  • Trả về ngày cùng ngày trong tháng cách months tháng.
  • Nếu ngày không tồn tại (ví dụ 31/01 + 1 tháng), Excel sẽ trả về ngày cuối tháng (28/02 hoặc 29/02).
  • Ví dụ: =EDATE(A1,1) → một tháng sau ngày A1.

3. Hàm tính khoảng cách thời gian

3.1. Hàm DATEDIF(start_date, end_date, unit)

  • Không được liệt kê trong danh sách hàm chính nhưng vẫn hoạt động trong Excel.
  • unit có thể là "Y" (năm), "M" (tháng), "D" (ngày), "MD" (số ngày không tính tháng và năm), "YM" (số tháng không tính năm), "YD" (số ngày không tính năm).

Ví dụ: Tính tuổi nhân viên:

=DATEDIF(A2, TODAY(), "Y")

3.2. Hàm NETWORKDAYS(start_date, end_date, holidays)

  • Trả về số ngày làm việc (Monday‑Friday) giữa hai ngày, có thể trừ ngày lễ (holidays).
  • Thường dùng trong tính lương, thời gian hoàn thành dự án.
=NETWORKDAYS(A2, B2, $F$2:$F$10) // F2:F10 chứa danh sách ngày lễ

3.3. Hàm WORKDAY(start_date, days, holidays)

  • Trả về ngày làm việc cuối cùng sau days ngày làm việc tính từ start_date.
  • days có thể âm để tính ngày làm việc trước.
=WORKDAY(A2, 10, $F$2:$F$10) // 10 ngày làm việc sau ngày A2

3.4. Hàm NETWORKDAYS.INTL và WORKDAY.INTL

  • Cho phép tùy chỉnh ngày nghỉ trong tuần (ví dụ: nghỉ Thứ Bảy, Chủ Nhật hoặc chỉ Chủ Nhật).
  • Tham số thứ ba là một chuỗi 7 ký tự "0000011" (1 = ngày nghỉ, 0 = ngày làm việc) bắt đầu từ Monday.
=NETWORKDAYS.INTL(A2, B2, "0000011", $F$2:$F$10) // Nghỉ Thứ Bảy và Chủ Nhật

4. Định dạng ngày tháng – Khi nào dùng hàm, khi nào dùng định dạng ô?

4.1. Định dạng số (Number Format)

  • Cách nhanh: Chọn ô → Nhấn Ctrl+1 → Tab Number → Category: Date → Chọn mẫu.
  • Ưu điểm: Không thay đổi giá trị thực tế, chỉ thay đổi cách hiển thị.
  • Nhược điểm: Khi cần kết quả dưới dạng chuỗi để ghép với văn bản, cần dùng hàm.

4.2. Hàm TEXT(value, format_text)

  • Chuyển ngày tháng thành chuỗi theo mẫu định dạng tùy ý.
  • Cú pháp: =TEXT(A1, "dd/mm/yyyy").
  • Lưu ý: Khi dùng TEXT, giá trị trở thành chuỗi, không thể thực hiện phép tính ngày tháng trực tiếp.

Ví dụ ghép chuỗi:

="Hôm nay là ngày " & TEXT(TODAY(), "dd mmmm yyyy")

Kết quả: “Hôm nay là ngày 21 June 2026”.

5. Các công thức nâng cao – Ứng dụng thực tế

5.1. Tính tuổi chính xác (năm, tháng, ngày)

=DATEDIF(A2, TODAY(), "Y") & " năm " & DATEDIF(A2, TODAY(), "YM") & " tháng " & DATEDIF(A2, TODAY(), "MD") & " ngày"

5.2. Kiểm tra ngày hợp lệ (ví dụ: ngày sinh không được trong tương lai)

Hàm Excel Ngày Tháng Năm
Hàm Excel Ngày Tháng Năm
=IF(A2 > TODAY(), "Ngày không hợp lệ", "OK")

5.3. Tự động tạo lịch thanh toán hàng tháng

Giả sử ngày ký hợp đồng ở A2, thời hạn 12 tháng, ngày thanh toán là ngày 15 mỗi tháng:

=IF(DAY(A2)<=15, DATE(YEAR(A2), MONTH(A2), 15), DATE(YEAR(A2), MONTH(A2)+1, 15))

Sao chép công thức cho 12 dòng, mỗi dòng cộng thêm 1 tháng:

=EDATE($B$2, ROW()-2) // B2 là ngày thanh toán đầu tiên

5.4. Đếm số ngày nghỉ lễ trong một khoảng thời gian

Giả sử danh sách ngày lễ ở F2:F20, muốn biết trong năm 2026 có bao nhiêu ngày lễ rơi vào ngày làm việc:

=SUMPRODUCT(--(WEEKDAY(F2:F20,2)<=5)(YEAR(F2:F20)=2026))

5.5. Tự động cập nhật “Ngày cuối kỳ báo cáo” (cuối tháng thứ ba)

=EOMONTH(TODAY(),2) // Hai tháng sau ngày hiện tại, rồi lấy cuối tháng

5.6. So sánh thời gian (ví dụ: thời gian giao hàng ≤ 48 giờ)

Giả sử thời gian đặt hàng ở A2, thời gian giao hàng thực tế ở B2:

=IF(B2 - A2 <= 2, "Đúng hạn", "Quá hạn")

(2 = 48 giờ vì 1 ngày = 24 giờ).

6. Xử lý ngày tháng trong các ngôn ngữ và khu vực (locale)

Excel có định dạng ngày khác nhau tùy theo cài đặt hệ thống (MM/DD/YYYY vs DD/MM/YYYY). Khi làm việc với dữ liệu nhập từ nguồn khác (CSV, hệ thống ERP), có thể gặp lỗi “#VALUE!” do Excel hiểu sai định dạng.

6.1. Giải pháp:

  1. Sử dụng DATEVALUE: Chuyển chuỗi thành ngày dựa trên định dạng hiện tại.
=DATEVALUE("21/06/2026") // Nếu hệ thống dùng DD/MM/YYYY
  1. Kết hợp MID, LEFT, RIGHT để tách thành phần và dùng DATE.
=DATE(RIGHT(A2,4), MID(A2,4,2), LEFT(A2,2)) // A2 = "21-06-2026"
  1. Sử dụng Power Query: Khi nhập dữ liệu, Power Query cho phép xác định định dạng ngày một cách chính xác trước khi tải vào bảng tính.

7. Tối ưu hoá hiệu năng khi làm việc với ngày tháng

  • Tránh dùng hàm volatile (NOW, TODAY) trong bảng tính lớn: Chúng sẽ tính lại mỗi khi workbook thay đổi, làm chậm.
  • Sử dụng bảng tham chiếu (named ranges) cho danh sách ngày lễ: Giúp công thức ngắn gọn, dễ bảo trì.
  • Giảm số lần lặp lại công thức: Tạo một cột trung gian để tính ngày trung gian (ví dụ: ngày cuối tháng) rồi tham chiếu lại.
  • Sử dụng Array formulas hoặc LET (Excel 365) để lưu trữ kết quả trung gian.

Ví dụ với LET (Excel 365):

=LET( start, A2, end, B2, days, NETWORKDAYS(start, end, $F$2:$F$10), days
)

8. Các lỗi thường gặp và cách khắc phục

LỗiNguyên nhânCách khắc phục
#VALUE!Chuỗi không phải định dạng ngày, hoặc hàm DATE nhận tham số không hợp lệKiểm tra định dạng ô, dùng DATEVALUE hoặc TEXT để chuẩn hoá
#NUM!DATEDIF với end_date < start_dateĐảo lại tham số hoặc dùng ABS nếu chỉ cần khoảng cách
#NAME?Tên hàm sai (ví dụ: viết DATEVAlue), hoặc hàm không có trong phiên bản ExcelKiểm tra chính tả, cập nhật phiên bản Office
Sai ngày tháng khi nhập dữ liệuĐịnh dạng ngày trong file CSV (MM/DD vs DD/MM)Mở CSV bằng Notepad, thay đổi thứ tự, hoặc dùng Power Query để xác định định dạng
Công thức trả về ngày “1900-01-00”Thiếu dấu “/” hoặc “-” trong chuỗi ngày, Excel nhận là 0Đảm bảo chuỗi ngày hợp lệ, sử dụng DATE để tạo ngày

9. Thủ thuật “đánh dấu” ngày quan trọng bằng Conditional Formatting

Bạn có thể làm nổi bật:

  • Ngày cuối tháng: =DAY(A2)=DAY(EOMONTH(A2,0))
  • Ngày nghỉ lễ: =COUNTIF($F$2:$F$20, A2)>0
  • Hạn thanh toán trong 7 ngày tới: =AND(A2>=TODAY(), A2<=TODAY()+7)

Cách thực hiện:

  1. Chọn vùng dữ liệu ngày.
  2. Vào Home > Conditional Formatting > New Rule > Use a formula to determine which cells to format.
  3. Nhập công thức và chọn định dạng (màu nền, chữ).

10. Kết hợp ngày tháng với các hàm khác (LOOKUP, IF, SUMIFS…)

10.1. Tổng hợp doanh thu trong khoảng thời gian

=SUMIFS(RevenueRange, DateRange, ">="&StartDate, DateRange, "<="&EndDate)

10.2. Tra cứu giá trị dựa trên tháng

=VLOOKUP(TEXT(A2,"mmm-yyyy"), TableArray, 2, FALSE)

10.3. Đánh dấu “Quá hạn” cho các đơn hàng

=IF(AND(C2<>"", D2="", TODAY()>E2), "Quá hạn", "")

Trong đó:
– C2 = ngày đặt hàng,
– D2 = ngày giao hàng thực tế,
– E2 = ngày giao hàng dự kiến.

11. Các hàm mới trong Excel 365/2026 hỗ trợ ngày tháng

HàmMô tảVí dụ
SEQUENCE(rows, columns, start, step)Tạo mảng ngày liên tiếp=SEQUENCE(12,1,DATE(2026,1,1),30) → mỗi 30 ngày một ngày
FILTER(array, include, if_empty)Lọc dữ liệu theo điều kiện ngày=FILTER(A2:B100, (A2:A100>=TODAY())(A2:A100<=TODAY()+30))
UNIQUE(array, by_col, exactly_once)Lấy danh sách ngày duy nhất=UNIQUE(A2:A500)
XLOOKUP(lookup_value, lookup_array, return_array, if_not_found, match_mode, search_mode)Thay thế VLOOKUP, hỗ trợ ngày=XLOOKUP(TODAY(), DateColumn, SalesColumn, 0)
LET(name1, value1, …, calculation)Định nghĩa biến tạm, giảm tính toán lặp=LET(d,TODAY(), d+30)

12. Thực hành: Xây dựng bảng “Kế hoạch dự án 12 tháng”

12.1. Yêu cầu

  • Cột A: Tên dự án
  • Cột B: Ngày bắt đầu (ngày ký hợp đồng)
  • Cột C: Thời gian (tháng)
  • Cột D: Ngày kết thúc (tự động tính)
  • Cột E: Ngày thanh toán hàng tháng (ngày 15)
  • Cột F: Số ngày làm việc còn lại tính tới ngày hiện tại

12.2. Công thức

ÔCông thức
D2=EDATE(B2, C2) - 1 (Ngày cuối tháng sau C2 tháng)
E2=IF(DAY(B2)<=15, DATE(YEAR(B2), MONTH(B2), 15), DATE(YEAR(B2), MONTH(B2)+1, 15))
F2=MAX(0, NETWORKDAYS(TODAY(), D2, $H$2:$H$20)) (H2:H20 = ngày lễ)

Sao chép xuống các dòng còn lại, thay đổi tham chiếu tương ứng.

13. Tổng kết

Việc thấu hiểu và thành thạo các hàm Excel ngày tháng năm là nền tảng để:

  1. Quản lý thời gian: Tính deadline, tuổi, thời gian chênh lệch.
  2. Tự động hoá báo cáo: Tạo lịch thanh toán, báo cáo tiến độ.
  3. Phân tích dữ liệu theo thời gian: Đánh giá xu hướng, dự báo.
  4. Giảm lỗi nhập liệu: Kiểm tra ngày hợp lệ, chuẩn hoá định dạng.

Hãy áp dụng các công thức, hàm và mẹo ở trên vào công việc thực tế của bạn. Khi gặp vấn đề phức tạp hơn, luôn nhớ rằng Excel lưu trữ ngày tháng dưới dạng số, vì vậy hầu hết các phép tính chỉ cần cộng, trừ, hoặc sử dụng các hàm chuyên dụng. Đừng ngại kết hợp chúng với các hàm logic (IF, AND, OR) và hàm tổng hợp (SUMIFS, COUNTIFS) để tạo ra những giải pháp mạnh mẽ, linh hoạt và nhanh chóng.

Chúc bạn thành công trong việc làm chủ thời gian bằng Excel!

⚠️
LƯU Ý QUAN TRỌNG: Miễn trừ trách nhiệm: Mặc dù chúng tôi luôn nỗ lực để đảm bảo tính chính xác và cập nhật của thông tin, nhưng các quy định về giáo dục và tuyển sinh có thể thay đổi theo thời gian. BigSchool không chịu trách nhiệm về bất kỳ sai sót nào hoặc kết quả phát sinh từ việc sử dụng thông tin trên trang này. Độc giả nên liên hệ trực tiếp với nhà trường hoặc cơ quan chức năng để có thông tin mới nhất. Ngoài ra, BigSchool tuyệt đối không bán sản phẩm, khóa học hay cung cấp dịch vụ được nhắc đến trong bài.

Viết một bình luận