Google Sheets

Data Validation & Conditional Formatting Google Sheets Nâng Cao: Hướng Dẫn A-Z Kèm Bài Thực Hành

Tuân HoangTuân Hoang
23 tháng 4, 2026
Cập nhật: 6 tháng 10, 2026
18 phút đọc
Ảnh minh họa bài viết: Data Validation & Conditional Formatting Google Sheets Nâng Cao: Hướng Dẫn A-Z Kèm Bài Thực Hành

Data Validation & Conditional Formatting — hai vũ khí ngầm biến Google Sheets từ bảng tính đơn giản thành hệ thống quản lý dữ liệu chuyên nghiệp.

Bài viết hướng dẫn chi tiết A-Z cách thiết lập kiểm soát nhập liệu, tô màu tự động theo điều kiện, kết hợp cả hai để xây workflow hoàn chỉnh trên Google Sheets.

Trả lời nhanh: Dùng Xác thực dữ liệu để khóa kiểu nhập (danh sách thả xuống, số trong khoảng, ngày hợp lệ, công thức tùy chỉnh chặn trùng) và Định dạng có điều kiện để tô màu tự động (quá hạn, sắp hết hàng, vượt ngân sách). Kết hợp hai tính năng với công thức tùy chỉnh để dựng workflow nhập liệu sạch cho đơn hàng, tồn kho, chấm công ngay trên Google Sheets.

1. Data Validation Là Gì? Tại Sao Quan Trọng Khi Dùng Google Sheets?

Data Validation (kiểm soát dữ liệu đầu vào) là tính năng cho phép bạn quy định loại dữ liệu được phép nhập vào một ô hoặc vùng ô trong Google Sheets. Thay vì để nhân viên nhập tự do — dẫn đến sai chính tả, sai định dạng, dữ liệu rác — bạn thiết lập quy tắc để Google Sheets tự động kiểm tra và cảnh báo.

Ví dụ thực tế: bạn có cột "Trạng thái đơn hàng" — thay vì nhân viên A nhập "Đã giao", nhân viên B nhập "đã giao", nhân viên C nhập "Giao rồi", bạn tạo dropdown chỉ cho phép 4 giá trị: Chờ xử lý, Đang giao, Đã giao, Đã hủy. Kết quả: dữ liệu sạch 100%, báo cáo chính xác, không cần clean data thủ công.

Vì sao nên làm từ đầu:

Phần lớn báo cáo sai trên bảng tính bắt nguồn từ dữ liệu nhập không thống nhất: viết hoa thường lẫn lộn, sai định dạng ngày, gõ nhầm tên. Thiết lập Data Validation trước khi nhập liệu chặn được các lỗi này ngay tại ô, thay vì phải dọn dữ liệu sau.

Data Validation không chỉ là dropdown đơn giản. Google Sheets hỗ trợ nhiều loại validation phức tạp mà ít người biết — từ custom formula, regex pattern, dependent dropdown cho đến kiểm tra dữ liệu cross-sheet. Đây chính là thứ phân biệt người dùng cơ bản với người dùng nâng cao.

2. 7 Loại Data Validation Nâng Cao Trong Google Sheets

2.1 Dropdown từ danh sách tĩnh

Cách phổ biến nhất: vào Data → Data validation → Criteria: List of items, nhập các giá trị cách nhau bằng dấu phẩy. Phù hợp cho danh sách ngắn, ít thay đổi (trạng thái, loại sản phẩm, mức ưu tiên).

2.2 Dropdown từ dải ô (Range)

Chon Criteria: List from a range và trỏ đến một cột chứa danh sách. Ưu điểm lớn: khi bạn thêm/sửa/xóa mục trong cột nguồn, dropdown tự động cập nhật. Đây là cách làm chuẩn cho danh sách dài hoặc thường xuyên thay đổi — ví dụ danh mục sản phẩm, tên nhân viên, tên khách hàng.

2.3 Dependent Dropdown (Dropdown phụ thuộc)

Đây là kỹ thuật nâng cao: dropdown ở cột B thay đổi tùy theo giá trị đã chọn ở cột A. Ví dụ: cột A chọn "Thành phố" = Hà Nội → cột B chỉ hiển thị các quận của Hà Nội. Công thức sử dụng: INDIRECT() kết hợp Named Range hoặc FILTER() kết hợp UNIQUE().

// Dependent dropdown bằng INDIRECT

Criteria: List from a range → =INDIRECT(A2)

// Hoặc dùng FILTER + UNIQUE

Criteria: List from a range → =UNIQUE(FILTER(Sheet2!B:B, Sheet2!A:A=A2))

2.4 Validation theo số (Number)

Giới hạn ô chỉ nhận số trong khoảng cho phép: between, greater than, less than, equal to. Ứng dụng: giới hạn số lượng đặt hàng (1-1000), giá sản phẩm (>0), phần trăm giảm giá (0-100%). Nếu nhập ngoài khoảng, Google Sheets báo lỗi ngay.

2.5 Validation theo ngày (Date)

Kiểm soát ngày nhập vào: is valid date, before, after, between. Ứng dụng: ngày giao hàng phải sau ngày đặt hàng, ngày kết thúc khuyến mãi phải sau ngày bắt đầu, ngày sinh phải trước ngày hiện tại. Kết hợp =TODAY() để tạo validation động.

2.6 Validation bằng Custom Formula

Đây là loại mạnh nhất — bạn viết công thức trả về TRUE/FALSE. Nếu TRUE, dữ liệu được chấp nhận; FALSE sẽ bị từ chối. Ví dụ:

// Chỉ cho phép email hợp lệ

=REGEXMATCH(A1, "^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$")

// Chỉ cho phép số điện thoại VN (10 số, bắt đầu 0)

=AND(LEN(A1)=10, LEFT(A1,1)="0", ISNUMBER(VALUE(A1)))

// Không cho phép trùng lặp trong cột

=COUNTIF(A:A, A1)<=1

2.7 Validation với Checkbox

Google Sheets cho phép tạo checkbox (Data → Data validation → Criteria: Checkbox) với giá trị tùy chỉnh (thay vì TRUE/FALSE mặc định). Ví dụ: checked = "Đã thanh toán", unchecked = "Chưa thanh toán". Kết hợp Conditional Formatting để tô xanh hàng đã thanh toán — cực kỳ trực quan.

3. Conditional Formatting: Từ Cơ Bản Đến Nâng Cao

Conditional Formatting (định dạng có điều kiện) tự động thay đổi màu nền, màu chữ, font, viền của ô dựa trên giá trị hoặc công thức. Đây là công cụ biến bảng tính số liệu khô khan thành dashboard trực quan — nhìn vào là biết ngay đâu cần chú ý.

Truy cập: Format → Conditional formatting. Google Sheets hỗ trợ 2 chế độ:

Single color

Áp dụng 1 định dạng khi thỏa điều kiện. VD: tô đỏ ô có giá trị < 0, tô xanh ô có trạng thái "Hoàn thành".

Color scale

Gradient màu từ min → max. VD: doanh thu thấp = đỏ, trung bình = vàng, cao = xanh. Giống heatmap.

3.1 Conditional Formatting với Custom Formula

Sức mạnh thực sự nằm ở chế độ "Custom formula is". Bạn viết công thức trả về TRUE → định dạng được áp dụng. Điểm quan trọng: tham chiếu ô phải tương đối (không có $) để áp dụng cho toàn bộ range.

// Tô đỏ cả hàng nếu trạng thái là "Quá hạn"

=$E1="Quá hạn"

// Tô vàng nếu ngày hết hạn trong 7 ngày tới

=AND($D1>TODAY(), $D1<=TODAY()+7)

// Tô đậm hàng chẵn (zebra striping)

=ISEVEN(ROW())

// Highlight ô có giá trị trùng lặp

=COUNTIF(A:A, A1)>1

3.2 Ưu tiên quy tắc (Rule Priority)

Khi nhiều quy tắc cùng áp dụng cho một ô, Google Sheets ưu tiên quy tắc nằm trên cùng trong danh sách. Bạn kéo thả để sắp xếp thứ tự. Ngoài ra, tick "Stop if true" để dừng kiểm tra các quy tắc phía dưới khi quy tắc hiện tại đã khớp — tương tự if/else trong lập trình.

4. Kết Hợp Validation + Formatting Tạo Workflow Hoàn Chỉnh

Khi kết hợp Data Validation (kiểm soát đầu vào) với Conditional Formatting (hiển thị trực quan), bạn tạo ra một hệ thống quản lý dữ liệu gần như tự động. Dưới đây là 3 ví dụ workflow thực tế:

Workflow 1: Quản lý đơn hàng

  • Validation: Cột "Trạng thái" = dropdown (Chờ xử lý / Đang giao / Đã giao / Đã hủy)
  • Validation: Cột "Số lượng" = Number between 1-9999
  • Validation: Cột "Ngày giao" = Date after ngày đặt
  • Formatting: Chờ xử lý = nền vàng, Đang giao = nền xanh dương, Đã giao = nền xanh lá, Đã hủy = nền đỏ + gạch ngang
  • Formatting: Đơn hàng quá hạn giao (ngày giao < today mà chưa giao) = viền đỏ đậm

Workflow 2: Quản lý tồn kho

  • Validation: Cột "Danh mục" = dependent dropdown theo nhóm sản phẩm
  • Validation: Cột "Số lượng tồn" = Number >= 0
  • Formatting: Color scale cho cột tồn kho: đỏ (≤ mức tối thiểu) → xanh (đủ hàng)
  • Formatting: Tô đỏ đậm + bold nếu tồn kho = 0 (hết hàng)

Workflow 3: Chấm công nhân viên

  • Validation: Cột trạng thái = dropdown (Đi làm / Nghỉ phép / Nghỉ ốm / Nghỉ không lương)
  • Validation: Giờ vào = Time, custom formula kiểm tra giờ vào < giờ ra
  • Formatting: Đi muộn (giờ vào > 8:30) = tô cam
  • Formatting: Nghỉ không phép = tô đỏ cả hàng

Nếu bạn đang vận hành doanh nghiệp nhỏ và muốn xây dựng hệ thống quản lý hoàn chỉnh trên Google Sheets, hãy tham khảo bài Xây dựng ERP mini trên Google Sheets để hiểu bức tranh tổng thể.

5. Custom Formula — Sức Mạnh Thực Sự Của Người Dùng Nâng Cao

Custom Formula là điểm giao giữa Data Validation và Conditional Formatting — cả hai đều hỗ trợ. Dưới đây là các công thức nâng cao mà dân Google Sheets pro thường dùng:

Mục đích Custom Formula Dùng trong
Chặn nhập trùng =COUNTIF(A:A,A1)<=1 Validation
Chỉ cho chữ in hoa =EXACT(A1,UPPER(A1)) Validation
Giới hạn ký tự (max 200) =LEN(A1)<=200 Validation
Highlight quá hạn =AND($D1<TODAY(),$E1<>"Hoàn thành") Formatting
Highlight top 10% =A1>=PERCENTILE($A:$A,0.9) Formatting
Tô màu hàng cuối tuần =OR(WEEKDAY($A1)=1,WEEKDAY($A1)=7) Formatting

Để tìm hiểu thêm về các hàm nâng cao như ARRAYFORMULA, LAMBDA, hãy đọc bài ARRAYFORMULA & LAMBDA trong Google Sheets.

6. 5 Bài Thực Hành Ứng Dụng Thực Tế

Bài 1: Tạo form nhập đơn hàng có kiểm soát

Mục tiêu: Sheet nhập đơn hàng với dropdown sản phẩm, validation số lượng (1-999), ngày giao phải sau ngày đặt, email khách hàng hợp lệ. Conditional formatting tô màu theo trạng thái.

Kỹ thuật: List from range, Number between, Date after, REGEXMATCH, Custom formula formatting

Bài 2: Dashboard tồn kho với heatmap

Mục tiêu: Bảng tồn kho sử dụng color scale hiển thị mức tồn. Validation ngăn nhập số âm. Alert tự động khi tồn dưới ngưỡng tối thiểu.

Kỹ thuật: Color scale, Number >= 0, Custom formula =$B1<$C1 (tồn < tối thiểu)

Bài 3: Bảng chấm công với dependent dropdown

Mục tiêu: Chọn phòng ban → chỉ hiện nhân viên thuộc phòng đó. Tô cam nếu đi muộn, tô đỏ nếu nghỉ không phép. Tự động đếm ngày công cuối tháng.

Kỹ thuật: INDIRECT + Named Range, Time validation, COUNTIFS

Bài 4: Tracker dự án Gantt chart đơn giản

Mục tiêu: Mỗi task có ngày bắt đầu, ngày kết thúc (validation: kết thúc > bắt đầu), trạng thái, người phụ trách. Conditional formatting vẽ Gantt bar bằng cách tô màu các ô ngày.

Kỹ thuật: Date validation, Custom formula =AND(F$1>=$C2, F$1<=$D2)

Bài 5: CRM mini quản lý khách hàng

Mục tiêu: Quản lý pipeline bán hàng với dropdown giai đoạn (Lead → Qualified → Proposal → Closed Won/Lost). Email + SĐT validation. Tô màu theo giai đoạn và highlight deal giá trị cao.

Kỹ thuật: List of items, REGEXMATCH, PERCENTILE, multi-condition formatting

Nếu bạn muốn nâng cấp từ Google Sheets lên hệ thống quản lý chuyên nghiệp hơn, bài hướng dẫn tạo Dashboard Google Sheets sẽ giúp bạn xây dựng giao diện tổng quan đẹp mắt và hiệu quả.

7. Mẹo Nâng Cao & Sai Lầm Cần Tránh

Nên làm

  • Đặt validation trước khi nhập dữ liệu — phòng bệnh hơn chữa bệnh
  • Dung "Reject input" thay vì "Show warning" cho dữ liệu quan trọng
  • Viet help text rõ ràng trong "Validation help text" để nhân viên biết cách nhập
  • Sắp xếp conditional formatting rules theo thứ tự ưu tiên giảm dần
  • Test validation bằng cách nhập cố tình sai để kiểm tra
  • Sử dụng Named Range thay vi hard-code range address

Tránh làm

  • Tạo quá nhiều conditional formatting rules (>20 rules) → sheet chậm
  • Dung $A$1 (tham chiếu tuyệt đối) trong custom formula formatting → chỉ kiểm tra 1 ô
  • Quen "Stop if true" → nhiều rule chồng chéo, kết quả khó đoán
  • Validation dùng INDIRECT cross-sheet → không hoạt động trên mobile
  • Áp conditional formatting cho toàn bộ cột (A:A) → ảnh hưởng performance
  • Không viết help text → nhân viên không biết tại sao bị lỗi

Để tìm hiểu thêm cách bảo mật dữ liệu và phân quyền truy cập Google Sheets, đọc bài Bảo mật Google Sheets: Phân quyền & Protect Sheet.

Xem Các Phần Mềm Google Sheets Của SheetStore

Mỗi phần mềm có trang chi tiết với tính năng, giá và demo để bạn xem trước khi mua.

Xem Danh Sách Phần Mềm

8. Câu Hỏi Thường Gặp (FAQ)

Data Validation có hoạt động trên Google Sheets mobile không?

Có — dropdown và validation cơ bản hoạt động tốt trên app Google Sheets iOS/Android. Tuy nhiên, dependent dropdown dùng INDIRECT cross-sheet có thể không hiển thị đúng trên mobile. Khuyến nghị: test trên mobile trước khi deploy cho team.

Tối đa bao nhiêu conditional formatting rules trên 1 sheet?

Google Sheets không giới hạn cứng, nhưng thực tế nên giữ dưới 20 rules/sheet để đảm bảo performance. Nếu cần nhiều hơn, cân nhắc tách data ra nhiều sheet hoặc dùng Apps Script để format theo batch.

Làm sao copy Data Validation từ sheet này sang sheet khác?

Cách 1: Copy ô có validation → Paste Special → Paste data validation only (Ctrl+Shift+V, chọn "Data validation"). Cách 2: Dùng Apps Script với method getDataValidations() va setDataValidations() để copy programmatically.

Conditional Formatting có ảnh hưởng tốc độ Google Sheets không?

Có — đặc biệt khi dùng custom formula trên range lớn (cả cột A:A). Mỗi lần edit ô, Google Sheets phải evaluate lại tất cả rules. Giải pháp: giới hạn range cụ thể (VD: A1:A1000 thay vì A:A), giảm số rules, dùng "Stop if true".

Có thể dùng Apps Script để tạo Data Validation tự động không?

Hoàn toàn có thể. Dùng class SpreadsheetApp.newDataValidation() để tạo validation rules bằng code. Điều này đặc biệt hữu ích khi cần áp validation cho hàng trăm ô theo pattern nhất quán — xem bài Apps Script cho người mới để bắt đầu.

Bài viết liên quan:

Chia sẻ bài viết:

Tuân Hoang

Tuân Hoang

Đội ngũ SheetStore

Google SheetsGoogle Apps ScriptCRMAutomationPhần mềm quản lý doanh nghiệp

Google Workspace Certified, 5+ years experience

Bạn thấy bài viết hữu ích?

Đăng ký nhận thông báo khi có bài viết mới.

Nhận thông báo khi có bài viết mới. Không spam, hứa luôn! 😊

Bình luận (0)

Vui lòng đăng nhập để tham gia thảo luận