Trong môi trường làm việc hiện đại, việc quản lý thời gian và lên kế hoạch công việc ngày càng trở nên quan trọng. Excel, với khả năng linh hoạt và mạnh mẽ, luôn là công cụ được ưa chuộng để tạo ra các lịch làm việc, bảng biểu và biểu đồ. Một trong những nhu cầu phổ biến là làm nổi bật các ngày cuối tuần, đặc biệt là ngày Chủ nhật, để dễ dàng nhận biết và tránh nhầm lẫn. Bài viết này sẽ cung cấp cho bạn một hướng dẫn chi tiết, từng bước một, về cách tô màu ngày Chủ nhật trong Excel. Chúng tôi sẽ trình bày từ các phương pháp cơ bản nhất cho đến các kỹ thuật nâng cao, bao gồm việc sử dụng Conditional Formatting (Định dạng có điều kiện), công thức tùy chỉnh, VBA (Macro), và thậm chí là các hàm Power Query. Hy vọng sau khi đọc xong, bạn sẽ có thể áp dụng linh hoạt vào mọi loại bảng lịch, biểu đồ Gantt, hoặc báo cáo thời gian.
Có thể bạn quan tâm: Cấu Trúc Các Hàm Trong Excel: Hướng Dẫn Chi Tiết Từ Cơ Bản Đến Nâng Cao
1. Tổng Quan Về Định Dạng Có Điều Kiện (Conditional Formatting)
1.1. Định Dạng Có Điều Kiện Là Gì?
Conditional Formatting là một tính năng mạnh mẽ trong Excel cho phép bạn tự động thay đổi định dạng (màu nền, màu chữ, viền, v.v.) của ô dựa trên các điều kiện bạn đặt ra. Khi dữ liệu trong ô thỏa mãn điều kiện, Excel sẽ tự động áp dụng định dạng mà bạn đã chỉ định. Đây là công cụ lý tưởng để tô màu ngày Chủ nhật vì:
- Tự động cập nhật: Khi bạn thay đổi ngày, màu sắc sẽ tự động thay đổi mà không cần chỉnh sửa thủ công.
- Tiết kiệm thời gian: Một lần thiết lập, mọi ô trong dải dữ liệu sẽ được áp dụng đồng thời.
- Độ linh hoạt cao: Bạn có thể kết hợp nhiều điều kiện, ví dụ tô màu cả Chủ nhật và các ngày lễ.
1.2. Khi Nào Nên Dùng Conditional Formatting?
- Khi bạn có một bảng lịch với các ngày được nhập dưới dạng ngày tháng thực (Date).
- Khi bạn muốn đánh dấu tự động các ngày cuối tuần, ngày lễ, hoặc ngày quan trọng.
- Khi bảng dữ liệu có độ lớn lớn (hàng nghìn, cột hàng chục) và việc chỉnh sửa thủ công là không thực tế.
Có thể bạn quan tâm: Cách Căn Giữa Ô Trong Excel: Hướng Dẫn Chi Tiết Từ Cơ Bản Đến Nâng Cao
2. Chuẩn Bị Dữ Liệu – Tạo Bảng Lịch Cơ Bản
Trước khi áp dụng bất kỳ công cụ nào, chúng ta cần có một bảng dữ liệu chứa ngày tháng. Dưới đây là một ví dụ đơn giản:
| Thứ | Ngày |
|---|---|
| Thứ Hai | 01/09/2026 |
| Thứ Ba | 02/09/2026 |
| Thứ Tư | 03/09/2026 |
| Thứ Năm | 04/09/2026 |
| Thứ Sáu | 05/09/2026 |
| Thứ Bảy | 06/09/2026 |
| Chủ Nhật | 07/09/2026 |
| … | … |
Lưu ý: Cột “Ngày” phải được định dạng là Date (ngày tháng) trong Excel, không phải dạng văn bản. Bạn có thể kiểm tra bằng cách chọn ô → chuột phải → Format Cells → Number → Date.
Nếu bạn muốn tạo một lịch tháng tự động, có thể dùng công thức =DATE(year, month, 1) + ROW(A1)-1 và kéo xuống để tạo dãy ngày. Ví dụ:
- Ô A1:
=DATE(2026,9,1)→ trả về 01/09/2026. - Ô A2:
=A1+1→ trả về 02/09/2026. - Kéo công thức xuống tới hết tháng.
Có thể bạn quan tâm: Công Ty Excellence Team Việt Nam: Hành Trình Vươn Tầm Và Định Hình Tương Lai Doanh Nghiệp
3. Cách Tô Màu Chủ Nhật Bằng Conditional Formatting
3.1. Bước 1: Chọn Phạm Vi Ô Cần Định Dạng
Giả sử cột B chứa ngày tháng (B2:B31). Chọn toàn bộ phạm vi này hoặc toàn bộ bảng nếu muốn áp dụng cho cả cột “Thứ”.
3 Chủ nhật
3.2. Bước 2: Mở Conditional Formatting
- Vào tab Home → Conditional Formatting → New Rule (Quy tắc mới).
3.3. Bước 3: Chọn “Use a formula to determine which cells to format”
Chọn tùy chọn “Use a formula to determine which cells to format” (Sử dụng công thức để xác định ô cần định dạng).
3.4. Bước 4: Nhập Công Thức Xác Định Chủ Nhật
Công thức:
=WEEKDAY($B2,2)=7
Giải thích:
WEEKDAY(serial_number, return_type)trả về số thứ tự ngày trong tuần.- Khi
return_type = 2, các ngày được đánh số: Thứ Hai = 1, …, Chủ Nhật = 7. $B2là ô chứa ngày; dấu$cố định cột B, nhưng cho phép dòng thay đổi khi áp dụng cho các ô khác trong phạm vi.
Nếu bạn dùng kiểu trả về mặc định (return_type = 1), công thức sẽ là:
=WEEKDAY($B2)=1
vì trong chế độ này Chủ nhật là ngày 1.
3.5. Bước 5: Đặt Định Dạng
- Nhấn Format… → Fill (Màu nền) → Chọn màu xanh nhạt, hồng, hoặc bất kỳ màu nào bạn muốn.
- Bạn cũng có thể thay đổi Font Color (màu chữ) hoặc Border (viền) để làm nổi bật hơn.
3.6. Bước 6: Xác Nhận
Nhấn OK để đóng cửa sổ Format, sau đó OK lần nữa để áp dụng quy tắc. Ngay lập tức, các ô chứa ngày Chủ nhật sẽ hiển thị màu nền bạn đã chọn.
4. Mở Rộng: Tô Màu Cả Chủ Nhật Và Thứ Bảy (Cuối Tuần)
Nếu bạn muốn tô màu cả Thứ Bảy và Chủ Nhật, công thức sẽ thay đổi một chút:
=OR(WEEKDAY($B2,2)=6, WEEKDAY($B2,2)=7)
Hoặc dùng hàm >=:
=WEEKDAY($B2,2)>=6
Cũng áp dụng tương tự như các bước ở trên.
5. Tô Màu Chủ Nhật Khi Ngày Được Nhập Dưới Dạng Văn Bản
Trong một số trường hợp, người dùng nhập ngày dưới dạng văn bản (text) như “07/09/2026”. Khi đó WEEKDAY sẽ trả về lỗi. Để xử lý, chúng ta cần chuyển văn bản thành ngày bằng hàm DATEVALUE:
=WEEKDAY(DATEVALUE($B2),2)=7
Hoặc nếu ngày có định dạng “dd-mm-yyyy”:
=WEEKDAY(DATEVALUE(TEXT($B2,"dd-mm-yyyy")),2)=7
Lưu ý: Đảm bảo rằng các ô không chứa ký tự không phải ngày (ví dụ: “N/A”), nếu có, hàm sẽ trả lỗi. Bạn có thể kết hợp với IFERROR:
=IFERROR(WEEKDAY(DATEVALUE($B2),2)=7,FALSE)
6. Tô Màu Chủ Nhật Trong Bảng Pivot (Pivot Table)
Nếu bạn đang làm việc với PivotTable và muốn làm nổi bật các ngày Chủ nhật trong trường Date, bạn có thể:
- Thêm trường “Ngày” vào Values (hoặc Row Labels) và định dạng lại ô trong Pivot.
- Sử dụng Conditional Formatting trên vùng dữ liệu Pivot (cần bật “Apply formatting to all cells showing the same value”). Khi áp dụng công thức, bạn sử dụng GETPIVOTDATA hoặc tham chiếu trực tiếp tới ô trong Pivot.
Ví dụ, nếu trường ngày nằm ở cột C trong Pivot, công thức vẫn là:
=WEEKDAY(C2,2)=7
Nhưng bạn cần đánh dấu “Applies to” là toàn bộ vùng dữ liệu Pivot.
7. Sử Dụng VBA (Macro) Để Tô Màu Chủ Nhật Tự Động
Đối với những người muốn tự động hoá hoàn toàn (ví dụ, mỗi khi mở file, hoặc khi dữ liệu thay đổi), VBA là lựa chọn tốt.
7.1. Mở Trình Soạn Thảo VBA

Có thể bạn quan tâm: Cập Nhật Excel Mới Nhất: Tất Cả Những Điều Bạn Cần Biết Để Sử Dụng Hiệu Quả
- Nhấn
ALT + F11để mở Visual Basic for Applications. - Vào Insert → Module để tạo một module mới.
7.2. Đoạn Mã VBA
Sub HighlightSundays() Dim rng As Range Dim cell As Range ' Thay đổi địa chỉ phạm vi theo nhu cầu của bạn Set rng = Worksheets("Sheet1").Range("B2:B100") Application.ScreenUpdating = False ' Xóa định dạng màu nền hiện có (nếu muốn) rng.Interior.ColorIndex = xlNone For Each cell In rng If IsDate(cell.Value) Then If Weekday(cell.Value, vbMonday) = 7 Then cell.Interior.Color = RGB(255, 230, 230) ' Màu hồng nhạt End If End If Next cell Application.ScreenUpdating = True
End Sub
Giải thích:
Weekday(cell.Value, vbMonday)trả về 7 cho Chủ nhật (vìvbMondayđặt Thứ Hai là 1).RGB(255,230,230)là màu hồng nhạt; bạn có thể thay đổi màu bằng các giá trị RGB khác.Application.ScreenUpdating = Falsegiúp tăng tốc độ thực thi bằng cách tắt cập nhật màn hình trong quá trình chạy macro.
7.3. Gán Macro Vào Nút
- Vào Insert → Shapes → chọn một hình (ví dụ: nút hình chữ nhật).
- Nhấp chuột phải → Assign Macro… → chọn
HighlightSundays. - Khi người dùng nhấn nút, macro sẽ tự động tô màu các ngày Chủ nhật trong phạm vi đã chỉ định.
7.4. Tự Động Chạy Khi Dữ Liệu Thay Đổi
Bạn có thể đặt macro chạy tự động mỗi khi một ô trong cột ngày thay đổi:
Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Me.Range("B:B")) Is Nothing Then Call HighlightSundays End If
End Sub
Đặt đoạn code này vào Sheet Module (ví dụ: Sheet1) trong VBA. Khi bạn nhập hoặc thay đổi ngày trong cột B, macro sẽ tự động thực hiện.
8. Tô Màu Chủ Nhật Trên Biểu Đồ (Chart)
Nếu bạn tạo biểu đồ Gantt hoặc biểu đồ thời gian, việc làm nổi bật Chủ nhật giúp người xem dễ nhận ra khoảng thời gian nghỉ. Cách thực hiện:
- Tạo một cột phụ trong bảng dữ liệu, ví dụ “IsSunday”, với công thức:
excel =IF(WEEKDAY(B2,2)=7,1,0)
- Khi vẽ biểu đồ, thêm một series mới dựa trên cột “IsSunday”. Định dạng series này thành cột (Column) hoặc cạnh (Bar) với màu nền đặc biệt (ví dụ: màu xám nhạt).
- Đặt series “IsSunday” đặt ở dưới các series chính để nó hiển thị dưới nền.
- Tùy chỉnh trục thời gian để các ngày Chủ nhật hiển thị màu nền khác nhau.
Cách này cho phép biểu đồ tự động cập nhật màu nền khi dữ liệu ngày thay đổi.
9. Sử Dụng Power Query Để Thêm Cột Xác Định Chủ Nhật
Nếu dữ liệu của bạn được tải qua Power Query (Get & Transform), bạn có thể thêm một cột tùy chỉnh để xác định ngày Chủ nhật trước khi đưa vào bảng tính.
9.1. Bước Thực Hiện
- Data → Get Data → From File → From Workbook (hoặc nguồn dữ liệu khác) → tải dữ liệu.
- Trong Power Query Editor, chọn Add Column → Custom Column.
- Đặt tên cột:
IsSunday. - Nhập công thức:
powerquery if Date.DayOfWeek(Ngày, Day.Monday) = 6 then true else false
Date.DayOfWeektrả về 0 cho Thứ Hai (khiDay.Mondayđược dùng), vì vậy Chủ nhật là 6.Nhấn OK, rồi Close & Load để đưa dữ liệu trở lại Excel.
Sau khi dữ liệu được tải, bạn có thể sử dụng Conditional Formatting dựa trên cột IsSunday (giá trị TRUE/FALSE) để tô màu.
10. Các Lưu Ý Thực Tế Khi Áp Dụng
| Vấn đề | Giải pháp |
|---|---|
| Ngày nhập dưới dạng văn bản | Dùng DATEVALUE hoặc chuyển sang định dạng Date trước khi áp dụng Conditional Formatting. |
| Làm việc với nhiều sheet | Đặt Conditional Formatting trên từng sheet, hoặc tạo macro áp dụng cho toàn bộ workbook. |
| Hiệu suất chậm khi dữ liệu lớn | Sử dụng VBA để tô màu một lần thay vì Conditional Formatting, hoặc giới hạn phạm vi áp dụng. |
| Cần tô màu ngày lễ quốc gia | Tạo danh sách ngày lễ trong một sheet riêng, dùng VLOOKUP hoặc COUNTIF trong công thức Conditional Formatting để kiểm tra. |
| Màu nền không hiển thị trên in | Kiểm tra tùy chọn in “Print in Black and White” và tắt nó, hoặc dùng màu viền thay vì màu nền. |
11. Ví Dụ Thực Tế: Tạo Lịch Công Tác Hàng Tháng
11.1. Bước 1: Tạo Dãy Ngày
Trong Sheet “Lịch”, ô A2:
=DATE(2026,9,1)
Ô A3:
=A2+1
Kéo công thức xuống tới A31 (hoặc A30 tùy tháng). Định dạng cột A thành Date.
11.2. Bước 2: Thêm Cột Thứ
Ô B2:
=TEXT(A2,"dddd")
Kéo xuống. Kết quả sẽ hiển thị “Thứ Hai”, “Thứ Ba”, …, “Chủ Nhật”.
11.3. Bước 3: Áp Dụng Conditional Formatting
- Chọn phạm vi A2:B31.
- New Rule → Use a formula →
=WEEKDAY($A2,2)=7. - Đặt màu nền xanh nhạt.
- Nhấn OK.
Kết quả: Các hàng chứa ngày Chủ nhật sẽ có nền màu xanh nhạt, giúp bạn nhanh chóng nhận ra ngày nghỉ.
11.4. Bước 4: Thêm Cột Nhiệm Vụ
Bạn có thể thêm cột “Nhiệm vụ” (C) để nhập công việc. Khi ngày là Chủ nhật, bạn có thể khóa cột này (Data → Protect Sheet) để tránh nhập sai.
12. FAQ – Câu Hỏi Thường Gặp
Q1: Conditional Formatting không hoạt động, các ô vẫn không đổi màu?
A: Kiểm tra lại công thức, đặc biệt là dấu $. Đảm bảo ô chứa ngày được định dạng là Date, không phải Text. Ngoài ra, kiểm tra “Applies to” để chắc chắn phạm vi bao gồm các ô bạn muốn.
Q2: Tôi muốn tô màu Chủ nhật nhưng màu không hiển thị khi in ra.
A: Vào Page Layout → Sheet Options → Gridlines và chắc chắn “Print” được bật. Kiểm tra tùy chọn in “Black and White” trong Print Settings và tắt nó.
Q3: Làm sao để tô màu Chủ nhật cho một bảng lớn (hàng > 100,000)?
A: Sử dụng VBA để thực hiện một lần, hoặc áp dụng Conditional Formatting nhưng chỉ cho cột ngày (không phải toàn bộ bảng). Ngoài ra, tắt tính năng “Automatic calculation” trong Formulas → Calculation Options khi thiết lập.
Q4: Tôi có muốn tô màu Chủ nhật cho các ô chứa công thức trả về ngày (ví dụ =TODAY()+3).
A: Conditional Formatting vẫn hoạt động vì công thức trả về giá trị ngày. Đảm bảo công thức không trả về Text.
Q5: Có cách nào để tô màu Chủ nhật trong Google Sheets không?
A: Có, sử dụng Conditional Formatting trong Google Sheets với công thức =WEEKDAY(A2,2)=7 và chọn màu nền.
13. Kết Luận
Việc tô màu ngày Chủ nhật trong Excel không chỉ giúp bạn nhìn nhận lịch làm việc một cách trực quan mà còn giảm thiểu sai sót khi lên kế hoạch. Từ cách đơn giản nhất với Conditional Formatting, tới các giải pháp nâng cao như VBA, Power Query, và biểu đồ, bạn có thể lựa chọn phương pháp phù hợp nhất với nhu cầu và quy mô công việc.
Hãy thực hành ngay hôm nay: tạo một bảng lịch, áp dụng các bước chúng tôi đã trình bày, và cảm nhận sự khác biệt. Khi đã thành thạo, bạn sẽ dễ dàng mở rộng sang các trường hợp phức tạp hơn như tô màu ngày lễ, ngày nghỉ đặc biệt, hoặc tích hợp vào các báo cáo tự động.
Chúc bạn thành công và luôn có một lịch làm việc gọn gàng, hiệu quả!

Tiến sĩ Lê Thống Nhất sinh năm 1955 tại Nghệ An, là nhà giáo, nhà báo và doanh nhân trong lĩnh vực giáo dục. Ông từng giảng dạy Toán học tại Trường THPT Chuyên Phan Bội Châu và đảm nhiệm nhiều vai trò trong ngành giáo dục, từ viết sách, biên soạn tài liệu đến sáng lập các dự án hỗ trợ học tập trực tuyến.
Ông là người sáng lập BigSchool – nền tảng giáo dục trực tuyến kết nối giáo viên và học sinh cả nước. Ngoài ra, ông còn nổi tiếng với vai trò tác giả, diễn giả truyền cảm hứng và khách mời trên nhiều chương trình truyền hình, trong đó có “Ai là triệu phú” trên truyền hình VTV.
Trong suốt sự nghiệp, Tiến sĩ Lê Thống Nhất đã nhận nhiều giải thưởng giáo dục và được biết đến như một người luôn đổi mới, ứng dụng công nghệ vào dạy và học, góp phần lan tỏa tri thức và niềm say mê học tập cho thế hệ trẻ.
