Hàm IF Lồng Nhau Trong Google Sheets: Cách Dùng IF-THEN Xử Lý Điều Kiện 2026
Mục lục:
- 1. Vấn đề IF lồng nhau và khi nào nên dùng
- 2. Cấu trúc IF lồng nhau: ví dụ từng bước
- 3. Google Sheets giới hạn bao nhiêu tầng IF lồng nhau?
- 4. Giải pháp thay thế: IFS() giải quyết bài toán đa điều kiện gọn hơn
- 5. Khi nào nên dùng SWITCH() thay vì IF/IFS
- 6. Ứng dụng thực tế: kết hợp IF lồng nhau với công thức khác
- 7. Áp dụng IF/IFS cho toàn bộ cột với ARRAYFORMULA
- 8. Câu hỏi thường gặp
Vấn đề IF lồng nhau và khi nào nên dùng
Hàm IF cơ bản chỉ xử lý được 2 nhánh: đúng hoặc sai. Nhưng thực tế công việc luôn có nhiều hơn 2 kịch bản — xếp loại học sinh theo 5 mức điểm, tính hoa hồng theo 4 bậc doanh số, phân loại tồn kho theo 3 ngưỡng cảnh báo. Đó là lúc bạn cần IF lồng nhau (nested IF): đặt một hàm IF khác vào bên trong đối số value_if_false của IF ngoài, tạo thành chuỗi điều kiện nối tiếp nhau.
Cú pháp gốc:
| Thành phần | Ý nghĩa |
|---|---|
=IF(dieu_kien_1, ket_qua_1, IF(dieu_kien_2, ket_qua_2, IF(dieu_kien_3, ket_qua_3, ket_qua_mac_dinh))) | Mỗi IF con nằm gọn trong vị trí "false" của IF cha |
Nếu bạn chưa nắm chắc cú pháp IF cơ bản (đối số, kiểu dữ liệu trả về, lỗi thường gặp), nên đọc trước Hàm IF Trong Google Sheets: Hướng Dẫn Đầy Đủ Từ Cơ Bản Đến Nâng Cao rồi quay lại bài này để học cách mở rộng thành chuỗi điều kiện.
Cấu trúc IF lồng nhau: ví dụ từng bước
Giả sử bạn cần xếp loại học lực theo điểm trung bình ở ô B2, với 5 mức: Xuất sắc (≥9), Giỏi (≥8), Khá (≥6.5), Trung bình (≥5), Yếu (dưới 5).
=IF(B2>=9, "Xuất sắc",
IF(B2>=8, "Giỏi",
IF(B2>=6.5, "Khá",
IF(B2>=5, "Trung bình", "Yếu"))))
Nguyên tắc bắt buộc: luôn xếp điều kiện từ cao xuống thấp (hoặc chặt xuống lỏng). Nếu bạn viết ngược — kiểm tra B2>=5 trước — thì mọi học sinh đạt 9 điểm cũng sẽ dừng lại ở nhánh "Trung bình" vì công thức tính từ trên xuống và dừng ngay khi gặp điều kiện đúng đầu tiên.
Lỗi thường gặp khi lồng IF
- Thiếu dấu ngoặc đóng: mỗi IF mở ra một dấu
(phải có)tương ứng ở cuối chuỗi. 4 tầng IF thì cuối công thức có 4 dấu)liên tiếp. - Sai thứ tự điều kiện: như ví dụ trên, luôn đi từ cực trị về trung bình.
- Trộn kiểu dữ liệu trả về: một nhánh trả chuỗi text, nhánh khác trả số — dễ gây lỗi khi dùng kết quả này để tính toán tiếp.
- Quên trường hợp mặc định: luôn có 1 giá trị "else" cuối cùng để không bị lỗi hoặc trả về FALSE khi không khớp điều kiện nào.
Google Sheets giới hạn bao nhiêu tầng IF lồng nhau?
Về mặt kỹ thuật, Google Sheets không có giới hạn cứng số tầng IF lồng nhau như Excel (Excel giới hạn 64 tầng ở phiên bản mới, 7 tầng ở bản cũ). Tuy nhiên giới hạn thực tế nằm ở việc công thức trở nên khó đọc và khó bảo trì khi vượt quá 4-5 tầng. Một chuỗi 8 tầng IF lồng nhau nhìn giống mê cung dấu ngoặc, rất dễ sai khi sửa sau này — kể cả chính bạn cũng khó nhớ logic sau vài tháng.
Kinh nghiệm thực tế khi làm việc với các bảng tính vận hành doanh nghiệp: nếu công thức của bạn vượt quá 3-4 tầng IF, đó là dấu hiệu nên chuyển sang giải pháp khác gọn hơn — được trình bày ở phần dưới.
Giải pháp thay thế: IFS() giải quyết bài toán đa điều kiện gọn hơn
Từ khi Google Sheets bổ sung hàm IFS(), việc viết chuỗi điều kiện tuần tự trở nên đơn giản hơn nhiều — không cần đếm dấu ngoặc.
=IFS(B2>=9, "Xuất sắc", B2>=8, "Giỏi", B2>=6.5, "Khá", B2>=5, "Trung bình", TRUE, "Yếu")
So sánh trực tiếp:
| Tiêu chí | IF lồng nhau | IFS() |
|---|---|---|
| Độ dễ đọc | Giảm mạnh khi >3 tầng | Giữ nguyên dù nhiều điều kiện |
| Số dấu ngoặc | Bằng số tầng IF | Chỉ 1 cặp ngoặc duy nhất |
| Trường hợp mặc định | Đối số cuối cùng | Phải thêm TRUE, "giá trị" ở cuối |
| Tương thích Excel cũ | Có (mọi phiên bản) | Chỉ từ Excel 2019/365, Sheets hỗ trợ đầy đủ |
| Tốc độ tính toán | Tương đương | Tương đương |
Lưu ý quan trọng: IFS() không có đối số mặc định tự động. Nếu không có điều kiện nào đúng và bạn không thêm TRUE, "..." ở cuối, công thức sẽ trả lỗi #N/A. Đây là khác biệt lớn nhất so với IF lồng nhau (luôn có nhánh else).
Khi nào nên dùng SWITCH() thay vì IF/IFS
Nếu bạn đang so sánh một giá trị cố định với nhiều kết quả có thể xảy ra (không phải khoảng điều kiện), SWITCH() là lựa chọn gọn và nhanh hơn cả IFS. Ví dụ phân loại theo mã khu vực:
=SWITCH(C2, "HN", "Miền Bắc", "DN", "Miền Trung", "HCM", "Miền Nam", "Không xác định")
So với IFS phải viết C2="HN", "Miền Bắc", C2="DN", "Miền Trung"..., SWITCH chỉ cần liệt kê giá trị và kết quả tương ứng — ít lặp lại, dễ quét mắt hơn.
Bảng chọn hàm theo tình huống
| Tình huống | Hàm nên dùng |
|---|---|
| 2 điều kiện đơn giản | IF cơ bản |
| 3-4 điều kiện dạng khoảng (điểm số, doanh số, ngưỡng) | IF lồng hoặc IFS |
| 5+ điều kiện dạng khoảng | IFS (bắt buộc để dễ bảo trì) |
| So khớp giá trị cụ thể (mã, tên, danh mục) | SWITCH |
| Điều kiện phụ thuộc dữ liệu ở bảng khác | Kết hợp IFS với VLOOKUP/QUERY |
Ứng dụng thực tế: kết hợp IF lồng nhau với công thức khác
Trong vận hành doanh nghiệp, IF/IFS hiếm khi đứng một mình — thường kết hợp với các hàm tổng hợp dữ liệu khác để tạo báo cáo tự động.
Ví dụ 1: Tính hoa hồng theo bậc doanh số
=IFS(D2>=100000000, D2*0.1, D2>=50000000, D2*0.07, D2>=20000000, D2*0.05, TRUE, D2*0.03)
Ví dụ 2: Cảnh báo tồn kho kết hợp điều kiện kép
=IFS(AND(E2<10, F2="Ưu tiên"), "Khẩn cấp", E2<10, "Sắp hết", E2<50, "Theo dõi", TRUE, "Ổn định")
Với các bảng chấm công, lịch trực nhiều ca — nơi điều kiện phân loại còn phức tạp hơn (theo ca, theo ngày lễ, theo vị trí) — bạn có thể tham khảo cách tổ chức dữ liệu và công thức điều kiện trong Template Google Sheets Lịch Làm Việc Ca Trực: Shift Schedule Tự Động Cho Nhà Hàng Và Bệnh Viện.
Ví dụ 3: Khi điều kiện IF cần lấy dữ liệu từ nhiều nguồn
Nếu điều kiện của bạn không chỉ dựa vào một ô mà cần tổng hợp từ bảng lớn hoặc file khác, IF/IFS sẽ cần đi cùng QUERY hoặc IMPORTRANGE để lấy dữ liệu trước, sau đó mới áp điều kiện phân loại. Cách kết hợp này được trình bày kỹ trong Hàm Google Sheets Nâng Cao: Làm Chủ QUERY, ARRAYFORMULA, IMPORTRANGE & LAMBDA.
Áp dụng IF/IFS cho toàn bộ cột với ARRAYFORMULA
Một sai lầm phổ biến là kéo công thức IF xuống hàng nghìn dòng thủ công, khiến file nặng và dễ lỗi khi dữ liệu mới được thêm vào giữa bảng. Giải pháp là bọc IFS trong ARRAYFORMULA để công thức tự động áp dụng cho toàn cột:
=ARRAYFORMULA(IF(B2:B1000="", "",
IFS(B2:B1000>=9, "Xuất sắc", B2:B1000>=8, "Giỏi", B2:B1000>=6.5, "Khá",
B2:B1000>=5, "Trung bình", TRUE, "Yếu")))
Lớp IF ngoài cùng kiểm tra ô rỗng để tránh công thức tính luôn cả các dòng chưa có dữ liệu — một mẹo nhỏ nhưng giúp bảng tính sạch hơn hẳn. Khi bảng dữ liệu của bạn lớn và cần dashboard tổng hợp theo điều kiện, kỹ thuật này thường đi cùng QUERY để lọc và IMPORTRANGE để đồng bộ nhiều file, như minh họa trong Kết Hợp QUERY, ARRAYFORMULA Và IMPORTRANGE: Xây Dashboard Tự Động Trên Google Sheets.
Với các doanh nghiệp SME đang dùng Google Sheets làm hệ thống quản lý (bán hàng, kho, nhân sự), việc chuẩn hóa các công thức điều kiện dạng này thành template có sẵn — thay vì viết lại mỗi lần — giúp tiết kiệm đáng kể thời gian vận hành, đây cũng là hướng tiếp cận mà các mẫu Google Sheets trên SheetStore áp dụng cho từng ngành cụ thể.
Câu hỏi thường gặp
IF-THEN trong Google Sheets khác gì hàm IF thông thường?
Đây không phải hàm riêng biệt mà là cách gọi logic của hàm IF: NẾU (IF) điều kiện đúng THÌ (THEN) trả về giá trị A, ngược lại trả về giá trị B. Cú pháp thực tế vẫn là =IF(dieu_kien, gia_tri_dung, gia_tri_sai), không có từ khóa THEN riêng trong Sheets.
Làm sao lồng nhiều điều kiện IF-THEN trong một công thức?
Đặt hàm IF khác vào phần giá trị_sai của IF trước đó, ví dụ =IF(A1>90,"Giỏi",IF(A1>70,"Khá","Trung bình")). Nên lồng tối đa 3-4 cấp để dễ đọc, nhiều hơn nên chuyển sang IFS hoặc VLOOKUP bảng tra.
Khi nào nên dùng IFS thay vì lồng nhiều IF?
Khi có từ 4 điều kiện trở lên, IFS(dieu_kien1,ket_qua1,dieu_kien2,ket_qua2,...) giúp công thức ngắn gọn, dễ sửa và ít lỗi ngoặc đơn hơn so với lồng nhiều lớp IF truyền thống.
Kết hợp IF với AND/OR như thế nào để xử lý nhiều điều kiện cùng lúc?
Dùng AND khi cần TẤT CẢ điều kiện đúng: =IF(AND(A1>50,B1="Có"),"Đạt","Không đạt"). Dùng OR khi chỉ cần MỘT điều kiện đúng: =IF(OR(A1>90,B1="VIP"),"Ưu tiên","Thường").
Bài viết liên quan:
Bạn muốn áp dụng ngay mà không phải tự xây từ đầu?
Khám phá các mẫu Google Sheets và phần mềm quản lý dựng sẵn cho doanh nghiệp Việt tại SheetStore Marketplace.
📚 Bài Viết Liên Quan
- Google Sheets Nâng Cao Bài 8: Pivot Table và SUMPRODUCT - Phân Tích Dữ Liệu Đa Chiều
- Template Google Sheets Quản Lý Dự Án Xây Dựng 2027: Tiến Độ, Chi Phí, Nhân Công
- Apps Script Từ A Đến Z - Bài 1: Giới Thiệu và Các Khái Niệm Cơ Bản
- Template Google Sheets Báo Cáo Bán Hàng Theo Vùng và Đại Lý 2027: Phân Tích Đa Chiều
Chia sẻ bài viết:
Tuân Hoang
Đội ngũ SheetStore
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.


