[Hàm Điều Kiện] Hàm IF – các công thức được kết hợp với nhau và tránh các rắc rối

Hàm IF – các công thức được kết hợp với nhau và tránh các rắc rối
Hàm IF cho phép bạn tạo so sánh lô-gic giữa một giá trị và một giá trị dự kiến bằng cách kiểm tra điều kiện, rồi trả về kết quả nếu True hay False.

  • =IF(Điều gì đó là True, thì làm gì, nếu không thì làm gì khác)
Vì vậy, một câu lệnh IF có thể có hai kết quả. Kết quả đầu tiên là nếu so sánh của bạn là True, kết quả thứ hai là nếu so sánh của bạn là False.
Câu lệnh IF cực kỳ mạnh mẽ, đồng thời tạo cơ sở cho nhiều mô hình bảng tính nhưng chúng cũng là nguyên nhân cốt lõi của nhiều sự cố bảng tính. Tốt nhất, bạn nên áp dụng câu lệnh IF cho các điều kiện tối thiểu, chẳng hạn như Nam/Nữ, Có/Không/Có thể nhưng đôi khi, có thể bạn sẽ cần đánh giá các kịch bản phức tạp hơn yêu cầu lồng* 3 hàm IF với nhau.

* "Lồng" ám chỉ việc thực hiện kết hợp nhiều hàm với nhau trong một công thức.

Cú pháp
IF(logical_test, value_if_true, [value_if_false])
Ví dụ:
  • =IF(A2>B2,"Vượt dự toán","OK")
  • =IF(A2=B2,B4-A4,"")

Tên đối số
Mô tả
logical_test   
(bắt buộc)
Điều kiện bạn muốn kiểm tra.
value_if_true   
(bắt buộc)
Giá trị bạn muốn trả về nếu kết quả của logical_test là ĐÚNG.
value_if_false   
(tùy chọn)
Giá trị bạn 

Ghi chú

Dù Excel cho phép bạn lồng đến 64 hàm IF khác nhau thì bạn cũng không nên làm như vậy. Tại sao?
  • Nhiều câu lệnh IF sẽ yêu cầu suy nghĩ rất lâu để xây dựng chính xác và đảm bảo rằng lô-gic của câu lệnh có thể tính toán chính xác qua từng điều kiện mãi cho đến cuối cùng. Nếu bạn không lồng công thức chính xác 100 % thì khả năng 75 % là công thức có thể hoạt động được nhưng 25 % sẽ trả về kết quả không mong muốn. Rất tiếc, khả năng bạn tìm ra nguyên nhân của 25 % đó rất nhỏ.
  • Nhiều câu lệnh IF có thể rất khó để duy trì, đặc biệt là khi bạn quay lại một thời gian sau đó và cố gắng tìm hiểu điều mà bạn hoặc tệ hơn là một người khác, đang cố gắng thực hiện.
Nếu bạn gặp một câu lệnh IF mà có vẻ như kéo dài mãi thì bạn nên tạm dừng và xem lại chiến lược của mình.
Hãy xem cách phù hợp để tạo một câu lệnh IF được lồng phức tạp sử dụng nhiều hàm IF và thời điểm cần để nhận ra rằng đã đến lúc sử dụng một công cụ khác trong kho Excel của bạn.

Ví dụ

Dưới đây là một ví dụ về một câu lệnh IF được lồng tương đối chuẩn để chuyển đổi các điểm kiểm tra của học viên thành điểm theo chữ cái tương đương.
Câu lệnh IF kết hợp phức tạp - Công thức trong E2 là =IF(B2>97,"A+",IF(B2>93,"A",IF(B2>89,"A-",IF(B2>87,"B+",IF(B2>83,"B",IF(B2>79,"B-",IF(B2>77,"C+",IF(B2>73,"C",IF(B2>69,"C-",IF(B2>57,"D+",IF(B2>53,"D",IF(B2>49,"D-","F"))))))))))))
  • =IF(D2>89,"A",IF(D2>79,"B",IF(D2>69,"C",IF(D2>59,"D","F"))))
    Câu lệnh IF được lồng phức tạp này tuân theo lô-gic dễ hiểu:
  1. Nếu Điểm Kiểm tra (trong ô D2) lớn hơn 89 thì học viên nhận điểm A
  2. Nếu Điểm Kiểm tra lớn hơn 79 thì học viên nhận điểm B
  3. Nếu Điểm Kiểm tra lớn hơn 69 thì học viên nhận điểm C
  4. Nếu Điểm Kiểm tra lớn hơn 59 thì học viên nhận điểm D
  5. Các trường hợp khác học viên nhận điểm F
Ví dụ cụ thể này tương đối an toàn vì không có khả năng mà sự tương quan giữa điểm kiểm tra và điểm theo chữ cái sẽ thay đổi nên sẽ không yêu cầu duy trì nhiều. Nhưng còn một vấn đề nữa – điều gì sẽ xảy ra nếu bạn cần phân đoạn các điểm giữa A+, A và A- (và các điểm khác)? Bây giờ, bạn cần viết lại câu lệnh IF bốn điều kiện của mình thành câu lệnh có 12 điều kiện! Lúc này, công thức của bạn sẽ có dạng như sau:
  • =IF(B2>97,"A+",IF(B2>93,"A",IF(B2>89,"A-",IF(B2>87,"B+",IF(B2>83,"B",IF(B2>79,"B-", IF(B2>77,"C+",IF(B2>73,"C",IF(B2>69,"C-",IF(B2>57,"D+",IF(B2>53,"D",IF(B2>49,"D-","F"))))))))))))
Câu lệnh này vẫn chính xác về mặt chức năng và sẽ hoạt động như dự kiến nhưng có thể mất nhiều thời gian để viết và nhiều thời gian hơn để kiểm tra nhằm đảm bảo rằng câu lệnh thực hiện được những gì bạn mong muốn. Một vấn đề hiển nhiên khác là bạn đã phải nhập điểm và điểm theo chữ cái tương đương bằng cách thủ công. Điều gì sẽ xảy ra khi bạn vô tình tạo lỗi đánh máy? Bây giờ, hãy tưởng tượng bạn đang cố gắng thực hiện điều này 64 lần với các điều kiện phức tạp hơn! Tất nhiên, điều đó là có thể, nhưng bạn có thực sự muốn mất công sức như vậy và gặp những lỗi thực sự khó phát hiện có thể gặp không?
MẸO: Mọi hàm trong Excel yêu cầu dấu ngoặc tròn mở và dấu ngoặc tròn đóng (). Excel sẽ cố gắng giúp bạn xác định điểm bắt đầu và kết thúc bằng cách tô màu cho các phần khác nhau trong công thức khi bạn chỉnh sửa công thức. Ví dụ: nếu bạn muốn chỉnh sửa công thức bên trên, khi bạn di chuyển con trỏ qua mỗi dấu ngoặc tròn đóng “)”, dấu ngoặc tròn mở tương ứng sẽ chuyển sang cùng màu. Điều này có thể đặc biệt hữu ích trong các công thức được lồng phức tạp khi bạn cố gắng xác định liệu bạn có đủ dấu ngoặc tròn tương ứng chưa.


Ví dụ bổ sung

Dưới đây là ví dụ rất phổ biến khi tính toán Tiền hoa hồng Bán hàng dựa theo các mức Doanh thu đạt được.
Công thức trong ô D9 là IF(C9>15000,20%,IF(C9>12500,17.5%,IF(C9>10000,15%,IF(C9>7500,12.5%,IF(C9>5000,10%,0)))))
  • =IF(C9>15000,20%,IF(C9>12500,17.5%,IF(C9>10000,15%,IF(C9>7500,12.5%,IF(C9>5000,10%,0)))))
Công thức này cho biết IF(C9 Lớn Hơn 15.000 thì trả về 20 %, IF(C9 Lớn Hơn 12.500 thì trả về 17,5 %, v.v...
Mặc dù ví dụ này khá giống với ví dụ về Điểm trước đây nhưng công thức này là một ví dụ tuyệt vời về việc duy trì các câu lệnh IF lớn khó khăn như thế nào – bạn cần làm gì nếu tổ chức của bạn quyết định thêm các mức độ bồi thường mới và thậm chí có thể thay đổi các giá trị phần trăm hoặc đô la hiện có? Bạn sẽ phải chịu trách nhiệm xử lý nhiều công việc!
MẸO: Bạn có thể chèn ngắt dòng vào thanh công thức để dễ đọc các công thức dài hơn. Chỉ cần nhấn ALT+ENTER trước văn bản bạn muốn ngắt sang dòng mới.
Dưới đây là ví dụ về kịch bản tiền hoa hồng với lô-gic không theo thứ tự:
Công thức trong D9 không theo thứ tự có dạng =IF(C9>5000,10%,IF(C9>7500,12.5%,IF(C9>10000,15%,IF(C9>12500,17.5%,IF(C9>15000,20%,0)))))

 



- Bài viết được chia sẽ trên trang www.tuhocexcel.net , Chia sẽ vui lòng ghi rõ nguồn gốc bài đăng.
- Group tham gia Tự Học Excel : https://www.facebook.com/groups/1716543358373810/

- Clip Tự học Excel - Xem tại đây : http://www.tuhocexcel.net/videos
- Mọi thắc mắc, góp ý vui lòng mail về địa chỉ : tuhocexcel2018@gmail.com
hoặc liên hệ qua : http://www.tuhocexcel.net/p/lien-he-tu-hoc-excel.html
>