Có thể bạn quan tâm: Cách Tắt Hiển Thị Công Thức Trong Excel: Hướng Dẫn Chi Tiết Từ Cơ Bản Đến Nâng Cao
Mở Đầu
Trong công việc hằng ngày, hầu hết các chuyên gia dữ liệu, kế toán, nhân sự hay nhà quản lý đều phải làm việc với Excel. Một trong những công cụ mạnh mẽ nhất của Excel là hàm IF (nếu) – cho phép chúng ta thực hiện các phép kiểm tra logic và trả về kết quả tùy thuộc vào điều kiện. Tuy nhiên, trong thực tế, hầu hết các bài toán không chỉ đơn giản là “nếu A thì B, nếu không thì C”. Thay vào đó, chúng ta thường phải xét nhiều điều kiện đồng thời, hoặc các điều kiện lẫn nhau, để đưa ra quyết định chính xác.
Bài viết này sẽ cung cấp cho bạn một hướng dẫn toàn diện về cách sử dụng hàm IF trong Excel khi phải xử lý nhiều điều kiện (multiple conditions). Chúng tôi sẽ đi từ những kiến thức cơ bản nhất, tới các kỹ thuật nâng cao như IF lồng nhau, AND, OR, CHOOSE, SWITCH, IFS, và cách kết hợp chúng với các hàm khác như VLOOKUP, INDEX/MATCH, SUMIFS, COUNTIFS, XLOOKUP. Bạn sẽ thấy các ví dụ thực tế, mẹo tối ưu hoá công thức, và những lỗi thường gặp khi làm việc với IF đa điều kiện.
Có thể bạn quan tâm: Cách Thêm Đường Xu Hướng (trend Line) Vào Đồ Thị Excel: Hướng Dẫn Chi Tiết Từ A Đến Z
1. Tổng Quan Về Hàm IF
1.1 Cú pháp cơ bản
=IF(logical_test, value_if_true, value_if_false)
- logical_test: biểu thức logic (ví dụ:
A1>10). - value_if_true: giá trị trả về nếu biểu thức đúng.
- value_if_false: giá trị trả về nếu biểu thức sai.
1.2 Khi nào cần nhiều điều kiện?
- Xác định mức giảm giá dựa trên số lượng và giá trị đơn hàng.
- Phân loại nhân viên thành cấp bậc dựa trên thâm niên và đánh giá.
- Kiểm tra độ hợp lệ của dữ liệu (ví dụ: ngày sinh phải > 18 tuổi và < 65 tuổi).
Có thể bạn quan tâm: Cách Lấy Văn Bản Từ Ô Trong Excel: Hướng Dẫn Chi Tiết, Mẫu Công Thức Và Mẹo Thực Tiễn
2. Sử Dụng AND và OR Để Kết Hợp Điều Kiện
2.1 Hàm AND
AND trả về TRUE khi tất cả các điều kiện đều đúng.
=IF(AND(A2>10, B2<5), "Đủ điều kiện", "Không đủ")
2.2 Hàm OR
OR trả về TRUE khi ít nhất một điều kiện đúng.
=IF(OR(A2="Nam", B2="Female"), "Có giới tính hợp lệ", "Không hợp lệ")
2.3 Kết hợp AND + OR
Bạn có thể lồng ghép chúng để tạo ra các biểu thức phức tạp:
=IF(AND(A2>10, OR(B2="Yes", C2="No")), "OK", "Fail")
Lưu ý: Khi dùng AND/OR trong IF, luôn đặt chúng ở vị trí
logical_test.
3. IF Lồng Nhau (Nested IF)
Khi có nhiều mức độ quyết định, bạn có thể lồng IF trong IF.
3.1 Cấu trúc cơ bản
=IF(A2>90, "A", IF(A2>80, "B", IF(A2>70, "C", "D")))
- Nếu A2 > 90 → trả “A”.
- Nếu không, kiểm tra A2 > 80 → trả “B”, v.v.
3.2 Vấn đề “độ sâu” (nesting limit)
Trong Excel 2007 trở lên, giới hạn là 64 mức lồng nhau, đủ cho hầu hết trường hợp. Tuy nhiên, quá nhiều lồng nhau sẽ khó bảo trì và hiệu năng giảm.
3.3 Khi nào tránh lồng IF?
- Khi có nhiều mức phân loại (>10) → nên dùng IFS hoặc CHOOSE.
- Khi muốn đọc công thức dễ dàng hơn → dùng lookup tables.
4. Hàm IFS (Excel 2026 trở lên)
4.1 Cú pháp
=IFS( logical_test1, value_if_true1, logical_test2, value_if_true2, ... logical_test_n, value_if_true_n, TRUE, value_if_false // tùy chọn, để xử lý mặc định
)
IFSsẽ kiểm tra các điều kiện theo thứ tự và trả về giá trị đầu tiên thỏa mãn.- Không cần lồng IF, đọc và bảo trì dễ hơn.
4.2 Ví dụ thực tế
=IFS( B2>=90, "Xuất sắc", B2>=80, "Giỏi", B2>=70, "Khá", B2>=60, "Trung bình", TRUE, "Yếu"
)
4.3 Lưu ý
- Không có tham số
value_if_falsemặc định; nếu không có điều kiện nào đúng, hàm trả lỗi #N/A. Vì vậy, thường thêm một điều kiện cuối cùngTRUE, "Không xác định".
5. Hàm SWITCH (Excel 2026 trở lên)
SWITCH thích hợp khi có một biểu thức và nhiều giá trị có thể trả về.
5.1 Cú pháp
=SWITCH(expression, value1, result1, value2, result2, ..., default
)
5.2 Ví dụ
=SWITCH(A2, "A", "Apple", "B", "Banana", "C", "Cherry", "Khác"
)
- Khi A2 = “B” → trả “Banana”.
- Nếu không khớp → trả “Khác”.
6. Kết Hợp IF Với Các Hàm SUMIFS, COUNTIFS
Khi cần tổng hoặc đếm dựa trên nhiều tiêu chí, thay vì dùng IF lồng nhau, dùng SUMIFS và COUNTIFS sẽ hiệu quả hơn.
6.1 SUMIFS
=SUMIFS(sum_range, criteria_range1, criteria1, criteria_range2, criteria2, ...)
Ví dụ: Tính tổng doanh thu cho khách hàng VIP trong tháng 1
=SUMIFS(C:C, A:A, "VIP", B:B, "01/2026")
6.2 COUNTIFS

Có thể bạn quan tâm: Excel If Contains Partial Text: Hướng Dẫn Chi Tiết Từ Cơ Bản Đến Nâng Cao
=COUNTIFS(criteria_range1, criteria1, criteria_range2, criteria2, ...)
Ví dụ: Đếm số đơn hàng lớn hơn 1000 và trạng thái “Đã giao”
=COUNTIFS(D:D, ">1000", E:E, "Đã giao")
7. Sử Dụng LOOKUP (VLOOKUP, HLOOKUP, INDEX/MATCH) Thay Thế IF Nhiều Điều Kiện
Khi bạn có bảng quy tắc (rule table) với các điều kiện và kết quả, bạn có thể dùng lookup để tra cứu thay vì viết hàng loạt IF.
7.1 Ví dụ: Bảng mức giảm giá
| Số lượng | Giảm giá |
|---|---|
| 1-10 | 0% |
| 11-20 | 5% |
| 21-30 | 10% |
| >30 | 15% |
Cách 1: VLOOKUP với approximate match (range lookup)
=VLOOKUP(A2, $F$2:$G$5, 2, TRUE)
A2chứa số lượng.- Bảng
$F$2:$G$5được sắp xếp tăng dần.
Cách 2: INDEX/MATCH
=INDEX($G$2:$G$5, MATCH(A2, $F$2:$F$5, 1))
7.2 Khi có nhiều tiêu chí (2 chiều)
Sử dụng INDEX/MATCH kết hợp với MATCH cho cả hàng và cột:
=INDEX($C$2:$F$5, MATCH(E2, $A$2:$A$5, 0), MATCH(F2, $B$1:$E$1, 0))
8. Xây Dựng Công Thức IF Đa Điều Kiện Thực Tế
8.1 Bài toán 1: Xác định mức lương thưởng
- Tiêu chí:
- Doanh thu > 500,000 → thưởng 10%
- Doanh thu > 300,000 và < =500,000 → thưởng 7%
- Doanh thu > 100,000 và < =300,000 → thưởng 5%
- Ngược lại → không thưởng
Giải pháp 1: Nested IF
=IF(B2>500000, B210%, IF(B2>300000, B27%, IF(B2>100000, B25%, 0)))
Giải pháp 2: IFS (đơn giản hơn)
=IFS( B2>500000, B210%, B2>300000, B27%, B2>100000, B25%, TRUE, 0
)
Giải pháp 3: LOOKUP
=LOOKUP(B2, {0,100001,300001,500001}, {0, B25%, B27%, B210%})
8.2 Bài toán 2: Phân loại rủi ro khách hàng
| Điểm tín dụng | Rủi ro |
|---|---|
| >= 800 | Thấp |
| 600-799 | Trung bình |
| <600 | Cao |
Công thức
=IF(C2>=800, "Thấp", IF(C2>=600, "Trung bình", "Cao"))
Hoặc dùng VLOOKUP:
=VLOOKUP(C2, $H$2:$I$4, 2, TRUE)
Trong đó $H$2:$I$4 là bảng trên (được sắp xếp tăng dần).
9. Khi Nào Dùng IF, Khi Nào Dùng Các Hàm Khác?
| Trường hợp | Khuyến nghị |
|---|---|
| Số lượng điều kiện ít (2‑3) | IF + AND/OR |
| Nhiều mức độ (≥4) | IFS hoặc LOOKUP |
| Cần trả về giá trị dựa trên một biểu thức | SWITCH |
| Tổng/đếm có tiêu chí | SUMIFS, COUNTIFS |
| Tra cứu dựa trên bảng quy tắc | VLOOKUP/XLOOKUP/INDEX-MATCH |
| Công thức phức tạp, cần bảo trì | Tạo bảng phụ trợ, dùng Power Query hoặc VBA |
10. Mẹo Tối Ưu Hóa Công Thức IF Đa Điều Kiện
- Tránh lặp lại cùng một biểu thức: Đặt biểu thức vào một ô phụ hoặc dùng Named Range.
- Sử dụng Named Ranges: Giúp công thức ngắn gọn và dễ đọc (ví dụ
=IF(Sales>Target, "Yes", "No")). - Sắp xếp điều kiện “cực đoan” trước: Khi một điều kiện bao phủ nhiều trường hợp, đặt nó ở đầu để giảm số lần tính toán.
- Kiểm tra lỗi: Kết hợp
IFERRORhoặcIFNAđể xử lý lỗi trả về từ lookup.excel =IFERROR(VLOOKUP(A2, Table, 2, FALSE), "Không tìm thấy") - Dùng hàm TEXT để định dạng kết quả:
excel =IF(A2>100, TEXT(A2,"#,##0") & " (Cao)", TEXT(A2,"#,##0") & " (Thấp)") - Sử dụng Power Query: Khi dữ liệu lớn, thực hiện logic trong Power Query sẽ nhanh hơn nhiều so với công thức ô.
11. Xử Lý Các Lỗi Thường Gặp Khi Dùng IF Đa Điều Kiện
| Lỗi | Nguyên nhân | Cách khắc phục |
|---|---|---|
| #VALUE! | So sánh kiểu dữ liệu không tương thích (ví dụ: so sánh chuỗi với số). | Đảm bảo cùng kiểu dữ liệu, dùng VALUE() hoặc TEXT(). |
| #N/A | Lookup không tìm thấy giá trị. | Bao quanh bằng IFERROR(...,"Không có"). |
| #DIV/0! | Chia cho 0 trong value_if_true hoặc value_if_false. | Kiểm tra điều kiện chia trước khi thực hiện (IF(B2=0,0, A2/B2)). |
| Kết quả sai do ưu tiên AND/OR | Không đặt ngoặc đúng. | Sử dụng dấu ngoặc () để xác định thứ tự tính toán. |
| Công thức quá dài, khó đọc | Nhiều IF lồng nhau. | Chuyển sang IFS, LOOKUP hoặc tạo bảng phụ trợ. |
12. Thực Hành: Xây Dựng Bảng Đánh Giá Nhân Viên
12.1 Yêu cầu
- Tiêu chí: Thâm niên (năm), Điểm KPIs (0‑100), Số dự án hoàn thành.
- Mức đánh giá:
- Xuất sắc: Thâm niên ≥ 5 năm, KPIs ≥ 90, Dự án ≥ 10.
- Giỏi: Thâm niên ≥ 3 năm, KPIs ≥ 80, Dự án ≥ 5.
- Khá: Thâm niên ≥ 1 năm, KPIs ≥ 70, Dự án ≥ 2.
- Cần cải thiện: Các trường hợp còn lại.
12.2 Công thức IF lồng nhau (độ phức tạp)
=IF(AND(A2>=5, B2>=90, C2>=10), "Xuất sắc", IF(AND(A2>=3, B2>=80, C2>=5), "Giỏi", IF(AND(A2>=1, B2>=70, C2>=2), "Khá", "Cần cải thiện")))
12.3 Sử dụng IFS (đơn giản hơn)
=IFS( AND(A2>=5, B2>=90, C2>=10), "Xuất sắc", AND(A2>=3, B2>=80, C2>=5), "Giỏi", AND(A2>=1, B2>=70, C2>=2), "Khá", TRUE, "Cần cải thiện"
)
12.4 Tối ưu bằng bảng quy tắc và LOOKUP
- Tạo bảng quy tắc (Sheet “Rule”):
| Thâm niên | KPIs_min | Dự_án_min | Đánh_giá |
|---|---|---|---|
| 5 | 90 | 10 | Xuất sắc |
| 3 | 80 | 5 | Giỏi |
| 1 | 70 | 2 | Khá |
| 0 | 0 | 0 | Cần cải thiện |
- Công thức (sử dụng
INDEX/MATCHvới nhiều tiêu chí):
=LET( tenure, A2, kpi, B2, projects, C2, tbl, Rule!$A$2:$D$5, pos, MATCH(1, (tenure>=tblThâm niên)(kpi>=tblKPIs_min)(projects>=tblDự_án_min), 0), INDEX(tblĐánh_giá, pos)
)
Lưu ý: Hàm
LET(Excel 365) giúp gán biến tạm, tăng tốc và làm công thức dễ đọc hơn.
13. Sử Dụng XLOOKUP Để Thay Thế IF Nhiều Điều Kiện
XLOOKUP (Excel 365/2026) mạnh hơn VLOOKUP vì cho phép tìm theo cả hai chiều và trả về mặc định.
13.1 Cú pháp
=XLOOKUP(lookup_value, lookup_array, return_array, if_not_found, match_mode, search_mode)
13.2 Ví dụ: Tính thuế suất dựa trên mức thu nhập
| Thu nhập | Thuế suất |
|---|---|
| 0-10k | 5% |
| 10k-30k | 10% |
| 30k-50k | 15% |
| >50k | 20% |
=XLOOKUP(A2, {0,10001,30001,50001}, {0.05,0.10,0.15,0.20}, 0.20, // nếu không tìm được, trả 20% 1) // match_mode = 1 (exact or next larger)
14. Khi Nào Nên Dùng VBA Thay Vì IF
- Khi công thức trở nên cực kỳ phức tạp và độ trễ đáng chú ý.
- Khi cần lặp lại quy trình trên nhiều sheet hoặc workbook.
- Khi muốn tự động hoá (ví dụ: gửi email nếu điều kiện nào đó thỏa mãn).
Ví dụ VBA (đơn giản) để đánh giá mức giảm giá:
Function GetDiscount(sales As Double) As Double Select Case sales Case Is > 500000 GetDiscount = 0.1 Case Is > 300000 GetDiscount = 0.07 Case Is > 100000 GetDiscount = 0.05 Case Else GetDiscount = 0 End Select
End Function
Sau khi lưu macro, bạn dùng trong ô:
=GetDiscount(B2)
15. Kết Luận
Việc xử lý multiple conditions trong Excel không chỉ dừng lại ở việc lồng nhau vô hạn các hàm IF. Bằng cách hiểu rõ các công cụ hỗ trợ như AND, OR, IFS, SWITCH, LOOKUP, XLOOKUP, SUMIFS, COUNTIFS và cách kết hợp chúng một cách hợp lý, bạn có thể:
- Giảm độ phức tạp của công thức.
- Tăng tốc độ tính toán khi dữ liệu lớn.
- Dễ bảo trì và đọc hiểu hơn cho người dùng khác hoặc cho chính mình trong tương lai.
Hãy bắt đầu áp dụng các kỹ thuật trên vào các bài toán thực tế trong công việc của bạn. Khi đã nắm vững nền tảng, bạn sẽ nhanh chóng trở thành “siêu nhân” Excel, có thể giải quyết mọi tình huống logic phức tạp chỉ trong vài giây.
Tip cuối cùng: Khi gặp công thức quá dài, hãy luôn cân nhắc chuyển sang một bảng phụ trợ (auxiliary table) hoặc Power Query để xử lý logic, sau đó chỉ dùng công thức đơn giản để truy xuất kết quả. Điều này không chỉ giúp file Excel nhẹ hơn mà còn giúp bạn quản lý dữ liệu một cách chuyên nghiệp hơn.
Chúc bạn thành công và luôn “đánh bại” mọi thách thức với hàm IF đa điều kiện trong Excel!

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ẻ.
