Chia sẻ
"Hướng dẫn chi tiết cách lồng nhiều hàm IF, sử dụng IFS và SWITCH để xử lý logic nhiều nhánh trong Excel — kèm ví dụ phân loại, xếp hạng, tính lương."
1. Giới hạn của IF đơn giản
Hàm IF cơ bản chỉ xử lý 2 trường hợp: ĐÚNG hoặc SAI. Nhưng thực tế thường có 3, 5, thậm chí 10+ trường hợp:
Điểm A/B/C/D/F → 5 mức
Phân loại khách hàng VIP/Gold/Silver/Normal → 4 mức
Tính thuế lũy tiến → 7 bậc
2. IF lồng nhiều tầng (Nested IF)
2.1. Cú pháp
=IF(điều_kiện_1, kết_quả_1, IF(điều_kiện_2, kết_quả_2, IF(điều_kiện_3, kết_quả_3, kết_quả_mặc_định)))2.2. Ví dụ: Xếp loại điểm
Điểm | Xếp loại |
|---|---|
>= 90 | Xuất sắc |
>= 80 | Giỏi |
>= 65 | Khá |
>= 50 | Trung bình |
< 50 | Yếu |
=IF(A2>=90, "Xuất sắc", IF(A2>=80, "Giỏi", IF(A2>=65, "Khá", IF(A2>=50, "Trung bình", "Yếu"))))2.3. Mẹo viết IF lồng dễ đọc
Thêm xuống dòng (Alt+Enter trong formula bar):
=IF(A2>=90, "Xuất sắc",
IF(A2>=80, "Giỏi",
IF(A2>=65, "Khá",
IF(A2>=50, "Trung bình",
"Yếu"))))2.4. Giới hạn
Excel 2003: Tối đa 7 tầng IF lồng
Excel 2007+: Tối đa 64 tầng
Thực tế: Quá 3-4 tầng → khó đọc, dễ lỗi
3. Hàm IFS — Thay thế IF lồng (Excel 2019/365)
3.1. Cú pháp
=IFS(điều_kiện_1, kết_quả_1, điều_kiện_2, kết_quả_2, ..., TRUE, kết_quả_mặc_định)3.2. Ví dụ cùng bài xếp loại
=IFS(A2>=90, "Xuất sắc", A2>=80, "Giỏi", A2>=65, "Khá", A2>=50, "Trung bình", TRUE, "Yếu")3.3. So sánh IFS vs Nested IF
Tiêu chí | Nested IF | IFS |
|---|---|---|
Độ dễ đọc | Khó (nhiều ngoặc) | Dễ (phẳng) |
Kết quả mặc định | Tham số else tự nhiên | Dùng TRUE ở cuối |
Tương thích | Mọi phiên bản | Excel 2019/365 |
Số conditions | Phụ thuộc nesting | Lên đến 127 cặp |
3.4. Lưu ý IFS
Thứ tự quan trọng: IFS kiểm tra từ trái sang phải, dừng ở điều kiện ĐẦU TIÊN thỏa mãn
Luôn thêm TRUE ở cuối: Nếu không có condition nào match → lỗi #N/A
Không có ELSE: Phải dùng
TRUE, "giá trị mặc định"thay thế
4. Hàm SWITCH — So khớp giá trị
4.1. Cú pháp
=SWITCH(biểu_thức, giá_trị_1, kết_quả_1, giá_trị_2, kết_quả_2, ..., kết_quả_mặc_định)4.2. Khi nào dùng SWITCH?
Khi so sánh MỘT giá trị với NHIỀU giá trị cố định (không phải khoảng):
=SWITCH(B2, "KD", "Kinh doanh", "MKT", "Marketing", "IT", "Công nghệ", "Khác")B2 | Kết quả |
|---|---|
KD | Kinh doanh |
MKT | Marketing |
IT | Công nghệ |
HR | Khác (mặc định) |
4.3. SWITCH vs IF/IFS
Dùng SWITCH khi | Dùng IF/IFS khi |
|---|---|
So sánh = (bằng) | So sánh >, <, >= |
Giá trị cố định | Khoảng giá trị |
Nhiều trường hợp đơn giản | Logic phức tạp |
5. Kết hợp IF với AND, OR, NOT
5.1. IF + AND (tất cả điều kiện đúng)
=IF(AND(A2>=50, B2>=50, C2>=50), "Đạt", "Không đạt")Tất cả 3 môn >= 50 → Đạt.
5.2. IF + OR (ít nhất 1 điều kiện đúng)
=IF(OR(A2="VIP", B2>100000000), "Ưu tiên", "Bình thường")Khách VIP HOẶC doanh số > 100 triệu → Ưu tiên.
5.3. IF + NOT
=IF(NOT(A2=""), "Có dữ liệu", "Trống")6. Ví dụ thực tế: Tính lương
=IF(AND(D2="Full-time", E2>=12),
C2 * 1.2,
IF(AND(D2="Full-time", E2>=6),
C2 * 1.1,
IF(D2="Part-time",
C2 * 0.5,
C2)))Điều kiện | Lương |
|---|---|
Full-time, >= 12 tháng | Lương × 1.2 |
Full-time, >= 6 tháng | Lương × 1.1 |
Part-time | Lương × 0.5 |
Còn lại | Lương gốc |
7. Ví dụ thực tế: Phân loại khách hàng
Dùng IFS kết hợp AND:
=IFS(
AND(B2>=500000000, C2>=24), "VIP",
AND(B2>=200000000, C2>=12), "Gold",
AND(B2>=50000000, C2>=6), "Silver",
TRUE, "Normal"
)8. Thay thế IF bằng VLOOKUP
IF lồng xếp loại điểm có thể thay bằng bảng tra cứu:
Min | Loại |
|---|---|
0 | Yếu |
50 | Trung bình |
65 | Khá |
80 | Giỏi |
90 | Xuất sắc |
=VLOOKUP(A2, $E$2:$F$6, 2, TRUE)Gọn, sạch, dễ bảo trì hơn 4 tầng IF.
9. Mẹo xử lý logic
Ưu tiên IFS/SWITCH nếu có Excel 365+
VLOOKUP approximate match thay IF lồng cho khoảng giá trị
Tách logic ra helper column: Thay vì 1 công thức siêu dài → tách thành nhiều cột phụ
LET function: Đặt tên biến giúp công thức IF phức tạp dễ đọc
Debug: Chọn phần IF → F9 → xem kết quả trung gian
10. Tổng kết
IF lồng nhiều tầng là kỹ năng cần thiết nhưng dễ lạm dụng. Với Excel 365, hãy ưu tiên IFS cho điều kiện khoảng và SWITCH cho so sánh giá trị. Kết hợp AND/OR giúp bạn xây dựng logic linh hoạt mà vẫn dễ đọc.
📥 Tải File Demo
📥 Tải file demo: if-ifs-switch-demo.xlsx
📎 File đính kèm bài viết — chứa đầy đủ dữ liệu mẫu
Mục lục
- 1. Giới hạn của IF đơn giản
- 2. IF lồng nhiều tầng (Nested IF)
- 2.1. Cú pháp
- 2.2. Ví dụ: Xếp loại điểm
- 2.3. Mẹo viết IF lồng dễ đọc
- 2.4. Giới hạn
- 3. Hàm IFS — Thay thế IF lồng (Excel 2019/365)
- 3.1. Cú pháp
- 3.2. Ví dụ cùng bài xếp loại
- 3.3. So sánh IFS vs Nested IF
- 3.4. Lưu ý IFS
- 4. Hàm SWITCH — So khớp giá trị
- 4.1. Cú pháp
- 4.2. Khi nào dùng SWITCH?
- 4.3. SWITCH vs IF/IFS
- 5. Kết hợp IF với AND, OR, NOT
- 5.1. IF + AND (tất cả điều kiện đúng)
- 5.2. IF + OR (ít nhất 1 điều kiện đúng)
- 5.3. IF + NOT
- 6. Ví dụ thực tế: Tính lương
- 7. Ví dụ thực tế: Phân loại khách hàng
- 8. Thay thế IF bằng VLOOKUP
- 9. Mẹo xử lý logic
- 10. Tổng kết
Muốn làm chủ Excel?
Tham gia khóa học E-Learning của Trà Đá Data để được hướng dẫn chi tiết từ A-Z với Case Study thực tế.
Tìm hiểu ngayBình luận
Đăng nhập để tham gia bình luận
Đăng nhậpNhận bài viết mới nhất
Đăng ký để nhận thông báo khi có bài viết mới. Không spam, chỉ kiến thức chất lượng.
Bài viết liên quan
Khám phá thêm các bài viết cùng chủ đề
INDIRECT Và OFFSET: Tạo Tham Chiếu Động Trong Excel
INDIRECT biến text thành tham chiếu, OFFSET tạo range dịch chuyển. Tạo dependent dropdowns, dynamic charts, cross-sheet lookups một cách linh hoạt.
IF Nâng Cao: IFS, SWITCH, LAMBDA, LET — Công Thức Điều Kiện Thế Hệ Mới
Không còn nested IF 64 cấp! IFS cho nhiều điều kiện, SWITCH cho match giá trị, LET cho biến trung gian, LAMBDA cho hàm tự tạo. So sánh chi tiết và ví dụ.
Dynamic Array Excel: UNIQUE, SORT, FILTER, SEQUENCE — Công Thức Tràn
Hướng dẫn Dynamic Array Excel 365: UNIQUE lọc không trùng, SORT sắp xếp, FILTER lọc điều kiện, SEQUENCE tạo chuỗi số. Kết hợp tạo solutions mạnh mẽ.
