Công Thức Ngày Tháng Năm Trong Excel: Hướng Dẫn Chi Tiết Từ Cơ Bản Đến Nâng Cao

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

Mở Đầu

Excel là một trong những công cụ xử lý dữ liệu mạnh mẽ và linh hoạt nhất hiện nay. Trong số hàng ngàn hàm và tính năng của nó, công thức ngày tháng năm (date functions) đóng vai trò quan trọng giúp người dùng quản lý, tính toán và phân tích dữ liệu thời gian một cách chính xác và hiệu quả. Bài viết này sẽ cung cấp cho bạn một hướng dẫn chi tiết, từ cơ bản đến nâng cao, về cách sử dụng các công thức ngày tháng năm trong Excel, kèm theo các ví dụ thực tế, mẹo tối ưu và các lỗi thường gặp cần tránh.

Lưu ý: Để dễ dàng theo dõi, bài viết được chia thành nhiều phần, mỗi phần tập trung vào một nhóm hàm hoặc một kỹ thuật cụ thể. Bạn có thể đọc toàn bộ hoặc chỉ tập trung vào những phần liên quan đến nhu cầu của mình.

1. Kiến Thức Cơ Bản Về Định Dạng Ngày Tháng Năm Trong Excel

1.1. Kiểu Dữ Liệu Ngày (Date) Trong Excel

  • Ngày trong Excel thực chất là một số nguyên, đại diện cho số ngày tính từ ngày 0 tháng 1 năm 1900 (trong Windows) hoặc ngày 0 tháng 1 năm 1904 (trong Mac). Ví dụ:
  • 1 = 1/1/1900
  • 44204 = 1/1/2026
  • Thời gian (time) là phần thập phân của số ngày. Ví dụ:
  • 0.5 = 12:00 PM (nửa ngày)
  • 0.75 = 18:00 (6 giờ chiều)

1.2. Định Dạng Ô (Cell Formatting)

  • Để hiển thị giá trị số thành ngày tháng, bạn cần định dạng ô (Format Cells) → Category → Date và chọn kiểu hiển thị mong muốn (VD: dd/mm/yyyy, mm-dd-yyyy, yyyy-mm-dd).
  • Định dạng Custom cho phép bạn tạo các mẫu hiển thị phức tạp hơn, ví dụ: $-en-USdddd, mmmm dd, yyyy sẽ hiển thị “Wednesday, March 15, 2026”.

1.3. Kiểm Tra Giá Trị Là Ngày Hay Không

  • Hàm ISDATE (trong Excel 365/2026 qua =ISNUMBER(A1)) hoặc ISTEXT để xác định kiểu dữ liệu.
  • Ví dụ: =ISNUMBER(A2) trả về TRUE nếu A2 chứa một ngày hợp lệ.

2. Các Hàm Cơ Bản Xử Lý Ngày Tháng Năm

2.1. Hàm TODAY() – Ngày Hiện Tại

=TODAY()
  • Trả về ngày hiện tại của hệ thống, không kèm thời gian.
  • Thường dùng trong báo cáo “cập nhật đến ngày …”.

2.2. Hàm NOW() – Ngày và Giờ Hiện Tại

=NOW()
  • Trả về ngày và thời gian hiện tại.
  • Cập nhật tự động mỗi khi bảng tính được tính lại.

2.3. Hàm DATE(year, month, day) – Tạo Ngày Từ Các Thành Phần

=DATE(2026, 3, 15) // trả về 15/03/2026
  • Hữu ích khi bạn có các cột riêng biệt cho năm, tháng, ngày và muốn ghép lại thành một ngày.

2.4. Hàm YEAR(), MONTH(), DAY() – Trích Xuất Thành Phần

=YEAR(A2) // Trích năm từ ngày trong A2
=MONTH(A2) // Trích tháng
=DAY(A2) // Trích ngày

2.5. Hàm WEEKDAY(serial_number, return_type) – Xác Định Ngày Trong Tuần

=WEEKDAY(A2,2) // trả về 1 (Thứ Hai) đến 7 (Chủ Nhật)
  • return_type = 1 (Mặc định): Chủ Nhật = 1, Thứ Hai = 2, …
  • return_type = 2: Thứ Hai = 1, Chủ Nhật = 7.
  • return_type = 3: Thứ Hai = 0, Chủ Nhật = 6.

2.6. Hàm WEEKNUM(serial_number, return_type) – Số Tuần Trong Năm

=WEEKNUM(A2,21) // ISO 8601: Tuần 1 là tuần có ngày Thứ Hai đầu tiên
  • return_type = 1: Tuần bắt đầu từ Chủ Nhật.
  • return_type = 21: Tuần bắt đầu từ Thứ Hai (theo chuẩn ISO).

2.7. Hàm EOMONTH(start_date, months) – Ngày Cuối Tháng

=EOMONTH(A2,0) // Ngày cuối cùng của tháng chứa A2
=EOMONTH(A2,1) // Ngày cuối tháng kế tiếp

2.8. Hàm WORKDAY(start_date, days, holidays) – Ngày Làm Việc

=WORKDAY(A2,5) // 5 ngày làm việc sau A2, bỏ qua cuối tuần
=WORKDAY(A2,5,$D$2:$D$10) // Bổ sung danh sách ngày lễ để bỏ qua

2.9. Hàm NETWORKDAYS(start_date, end_date, holidays) – Số Ngày Làm Việc Giữa Hai Ngày

=NETWORKDAYS(A2,B2) // Số ngày làm việc giữa A2 và B2

2.10. Hàm DATEDIF(start_date, end_date, unit) – Khoảng Cách Giữa Hai Ngày

=DATEDIF(A2,B2,"Y") // Số năm đầy đủ
=DATEDIF(A2,B2,"M") // Số tháng đầy đủ
=DATEDIF(A2,B2,"D") // Số ngày
=DATEDIF(A2,B2,"MD") // Số ngày còn lại sau khi trừ năm và tháng

Lưu ý: DATEDIF không có trong danh sách hàm chuẩn, nhưng vẫn hoạt động trong Excel.

3. Công Thức Tính Toán Thời Gian Thực Tế

3.1. Tính Tuổi (Years) Từ Ngày Sinh

=DATEDIF(A2, TODAY(), "Y")
  • A2 chứa ngày sinh, công thức trả về số tuổi hiện tại.

3.2. Tính Thời Gian Làm Việc (Tháng và Ngày)

=DATEDIF(A2, TODAY(), "Y") & " năm " & DATEDIF(A2, TODAY(), "YM") & " tháng " & DATEDIF(A2, TODAY(), "MD") & " ngày"
  • Kết hợp các đơn vị để có kết quả dạng “3 năm 2 tháng 5 ngày”.

3.3. Tính Ngày Còn Lại Đến Một Sự Kiện

=MAX(0, A2 - TODAY())
  • Trả về số ngày còn lại, nếu ngày đã qua sẽ trả về 0.

3.4. Đếm Ngày Cuối Tuần (Saturday, Sunday) Giữa Hai Ngày

=SUMPRODUCT(--(WEEKDAY(ROW(INDIRECT(A2&":"&B2)))>5))
  • Sử dụng ROW(INDIRECT()) để tạo dãy ngày, WEEKDAY để xác định cuối tuần.

3.5. Thêm hoặc Trừ Ngày, Tháng, Năm

=EDATE(A2, 6) // Cộng 6 tháng
=EDATE(A2, -3) // Trừ 3 tháng
=DATE(YEAR(A2)+1, MONTH(A2), DAY(A2)) // Cộng 1 năm
=A2 + 30 // Cộng 30 ngày

4. Định Dạng Ngày Tháng Năm Nâng Cao (Custom Format)

4.1. Các Ký Tự Định Dạng Thông Thường

Công Thức Ngày Tháng Năm Trong Excel
Công Thức Ngày Tháng Năm Trong Excel
Ký tựÝ nghĩa
dNgày không có số 0 (1‑31)
ddNgày có số 0 (01‑31)
dddViết tắt ngày trong tuần (Mon, Tue…)
ddddTên đầy đủ ngày trong tuần (Monday, Tuesday…)
mTháng không có số 0 (1‑12)
mmTháng có số 0 (01‑12)
mmmViết tắt tháng (Jan, Feb…)
mmmmTên đầy đủ tháng (January…)
yyNăm 2 chữ số (23)
yyyyNăm 4 chữ số (2026)
hGiờ 12h (1‑12)
hhGiờ 12h có số 0 (01‑12)
HGiờ 24h (0‑23)
HHGiờ 24h có số 0 (00‑23)
mPhút (khi dùng sau giờ)
mmPhút có số 0 (khi dùng sau giờ)
sGiây (0‑59)
ssGiây có số 0 (00‑59)

4.2. Ví Dụ Định Dạng Thực Tế

  • Ngày + Tháng + Năm bằng tiếng Việt:
    $-vi-VNdd "tháng" mm "năm" yyyy → 15 tháng 03 năm 2026
  • Ngày thứ (viết tắt) + Ngày/Tháng/Năm:
    ddd, dd/mm/yyyy → Wed, 15/03/2026
  • Ngày + Giờ (12h) + AM/PM:
    dd/mm/yyyy hh:mm AM/PM → 15/03/2026 02:30 PM
  • ISO 8601 (yyyy-mm-ddThh:mm:ss):
    yyyy-mm-dd"T"hh:mm:ss → 2026-03-15T14:30:00

4.3. Sử Dụng Conditional Formatting Với Ngày

Bạn có thể áp dụng Conditional Formatting để tô màu các ô ngày dựa trên điều kiện:

  • Ngày tới hạn trong 7 ngày:
    =AND(A2>=TODAY(), A2<=TODAY()+7) → Tô màu vàng.
  • Ngày đã quá hạn:
    =A2<TODAY() → Tô màu đỏ.

5. Xử Lý Dữ Liệu Ngày Tháng Năm Khi Nhập Dữ Liệu

5.1. Nhập Dữ Liệu Thô (Text) và Chuyển Sang Ngày

  • Vấn đề: Khi dữ liệu nhập dưới dạng văn bản (VD: “15/03/2026” dưới dạng Text) sẽ không cho phép tính toán.
  • Giải pháp:
    excel =DATEVALUE(A2) // Chuyển Text thành ngày =DATE(RIGHT(A2,4), MID(A2,4,2), LEFT(A2,2)) // Khi định dạng dd/mm/yyyy
  • Kỹ thuật Text to Columns: Chọn cột → Data → Text to Columns → Delimited → Next → Finish → Đặt định dạng Date.

5.2. Xử Lý Định Dạng Ngày Quốc Tế

  • Mặc định: Excel dựa vào cài đặt vùng (locale) của hệ thống.
  • Cách ép định dạng:
    excel =DATE(MID(A2,7,4), LEFT(A2,2), MID(A2,4,2))
    Đối với định dạng “mm/dd/yyyy”.

5.3. Loại Bỏ Dấu Gạch Chéo (Slash) Hoặc Dấu Gạch Ngang (Dash)

=DATEVALUE(SUBSTITUTE(A2,"/","-"))

6. Các Hàm Nâng Cao và Kỹ Thuật Phức Tạp

6.1. Hàm SEQUENCE + DATE để Tạo Dãy Ngày

=SEQUENCE(10,1, TODAY(), 1) // Tạo 10 ngày liên tiếp bắt đầu từ hôm nay

6.2. Hàm FILTER + DATE để Lọc Dữ Liệu Theo Khoảng Thời Gian

=FILTER(A2:C100, (A2:A100>=DATE(2026,1,1))(A2:A100<=DATE(2026,12,31)))
  • Lọc các bản ghi trong năm 2026.

6.3. Hàm XLOOKUP Kết Hợp DATE

=XLOOKUP(DATE(2026,3,15), A2:A100, B2:B100, "Không tìm thấy")
  • Tìm giá trị tương ứng với ngày cụ thể.

6.4. Hàm LET + LAMBDA Để Tái Sử Dụng Công Thức Ngày

=LET( dt, A2, y, YEAR(dt), m, MONTH(dt), d, DAY(dt), DATE(y+1, m, d) // Trả về ngày cùng ngày, cùng tháng năm tới năm sau
)

6.5. Hàm TEXT để Chuyển Đổi Ngày Thành Văn Bản

=TEXT(A2, "dd mmmm yyyy") // “15 March 2026”
  • Khi cần xuất dữ liệu sang báo cáo PDF/Word.

6.6. Hàm POWER QUERY (Get & Transform) Xử Lý Ngày

  • Trong Power Query, bạn có thể thêm cột Date.FromText, Date.AddMonths, Date.StartOfMonth, Date.EndOfMonth, Date.IsInCurrentMonth, v.v.
  • Ví dụ: Thêm cột “Ngày cuối tháng”:
    m Table.AddColumn(Source, "EndOfMonth", each Date.EndOfMonth(OrderDate), type date)

7. Ứng Dụng Thực Tế Trong Kinh Doanh

7.1. Quản Lý Hợp Đồng

  • Ngày ký kết (A2), Thời hạn (tháng) (B2).
  • Ngày hết hạn: =EDATE(A2, B2)
  • Cảnh báo 30 ngày trước hết hạn:
    excel =IF(EDATE(A2, B2)-TODAY()<=30, "Sắp hết hạn", "")

7.2. Tính Lương Theo Tháng

  • Ngày vào làm (A2), Lương cơ bản (B2), Hệ số tăng lương (C2).
  • Thâm niên: =DATEDIF(A2, TODAY(), "Y")
  • Lương hiện tại: =B2 (1 + C2ThâmNiên)

7.3. Báo Cáo Bán Hàng Hàng Tháng

  • =SUMIFS(Sales!C:C, Sales!A:A, ">="&DATE(YEAR(TODAY()),MONTH(TODAY()),1), Sales!A:A, "<="&EOMONTH(TODAY(),0))
  • Tổng doanh thu trong tháng hiện tại.

7.4. Dự Báo Dòng Tiền (Cash Flow)

  • Ngày nhận tiền (A2), Số tiền (B2).
  • Tính dòng tiền tích lũy qua thời gian:
    excel =SUMIFS(B:B, A:A, "<="&TODAY())

7.5. Lập Lịch Gửi Email Nhắc Nhở

  • Sử dụng công thức để xác định ngày gửi:
    excel =WORKDAY(A2,-1) // Gửi email ngày làm việc trước ngày đáo hạn

8. Những Lỗi Thường Gặp Khi Làm Việc Với Ngày Tháng Năm

LỗiNguyên NhânCách Khắc Phục
#VALUE!Nhập ngày dưới dạng text không nhận dạng đượcDùng DATEVALUE, TEXT TO COLUMNS, hoặc thay đổi định dạng vùng.
#NUM!Tháng >12 hoặc ngày >31 trong hàm DATEKiểm tra dữ liệu nguồn, dùng IFERROR để xử lý.
Ngày Không Đúng Khi NhậpCài đặt hệ thống (định dạng ngày/mm/yyyy vs mm/dd/yyyy)Sử dụng hàm DATE để tạo ngày từ các thành phần, hoặc thiết lập Locale trong Excel Options.
Công Thức Không Cập Nhật Tự ĐộngSử dụng Ctrl+; (date static) thay vì TODAY()Thay Ctrl+; bằng hàm động.
Ngày Cuối Tháng Sai Khi Năm NhuậnSử dụng công thức thủ công không xét năm nhuậnDùng EOMONTH hoặc DATE(YEAR, MONTH+1, 0).
Công Thức DATEDIF Trả Về #NUM!End date < Start dateĐảm bảo thứ tự ngày đúng, hoặc dùng ABS nếu cần.

9. Mẹo Tối Ưu Khi Sử Dụng Công Thức Ngày Tháng Năm

  1. Giữ dữ liệu ngày ở dạng số nguyên (không phải text) để tránh lỗi tính toán.
  2. Sử dụng bảng tham chiếu (lookup table) cho các ngày lễ quốc gia, giúp WORKDAY và NETWORKDAYS tính chính xác hơn.
  3. Kết hợp IFERROR để tránh hiển thị lỗi trong báo cáo:
    excel =IFERROR(DATEDIF(A2,B2,"Y"),"Ngày không hợp lệ")
  4. Sử dụng Named Ranges cho các hằng số như ngày lễ:
  5. Đặt tên Holidays cho dải ô chứa ngày lễ, sau đó dùng trong công thức.
  6. Tận dụng Power Pivot/DAX nếu làm việc với mô hình dữ liệu lớn:
  7. Hàm DAX DATEDIFF, EOMONTH, TODAY() có thể dùng trong Power BI hoặc Power Pivot.

10. Tổng Kết

Việc nắm vững công thức ngày tháng năm trong Excel không chỉ giúp bạn xử lý dữ liệu thời gian một cách chính xác mà còn mở ra nhiều khả năng tự động hoá quy trình kinh doanh, báo cáo và phân tích. Từ các hàm cơ bản như TODAY(), DATE(), YEAR(), MONTH(), DAY() cho tới các hàm nâng cao như EOMONTH, WORKDAY, NETWORKDAYS, DATEDIF, và các kỹ thuật kết hợp SEQUENCE, FILTER, LET, LAMBDA, bạn có thể xây dựng mọi loại mô hình thời gian phức tạp.

Hãy luôn chú ý tới định dạng ô, kiểm tra kiểu dữ liệu, và xử lý lỗi để đảm bảo bảng tính luôn ổn định. Khi gặp dữ liệu nhập dưới dạng text, đừng quên chuyển sang dạng ngày bằng DATEVALUE hoặc Text to Columns. Đối với các báo cáo kinh doanh, việc sử dụng công thức tính ngày hết hạn, cảnh báo gần hạn, tính tuổi, thâm niên, hoặc tính ngày làm việc sẽ giúp bạn đưa ra quyết định nhanh chóng và chính xác.

Hy vọng bài viết này đã cung cấp cho bạn một cẩm nang toàn diện về công thức ngày tháng năm trong Excel, từ cơ bản đến nâng cao, kèm theo các ví dụ thực tế và mẹo tối ưu. Hãy áp dụng ngay vào công việc của mình và trải nghiệm sức mạnh của Excel trong việc quản lý thời gian!

Chúc bạn thành công và luôn làm việc hiệu quả với 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