Phần 4: Các hàm điều kiện IF - IFS - IFNA - IFERROR trong Excel


1. Hàm IF

Cú pháp:
= IF(logical_test, value_if_true, [value_if_false])
Giải thích:
Nếu điều kiện logical_test là ĐÚNG (True) thì hàm trả về value_if_true
Ngược lại, nếu điều kiện là sai (False) thì hàm trả về value_if_false.
Ví dụ: ta có ô A3 giá trị là 4, ô B3 giá trị là 6, ô C3 ta gõ công thức
=IF(A3>B3,"A3 lớn hơn B3","A3 nhỏ hơn B3")
=> kết quả nhận được tại ô C3 là "A3 nhỏ hơn B3"



Nâng cao: có thể sử dụng nhiều hàm IF lồng vào nhau. 

Ví dụ: ta có cột F3 giá trị là 4, cột G3 giá trị là 6, cột H3 giá trị là 8.
Yêu cầu: Tìm ô có giá trị bé nhất và ghi vào ô I3, ô có giá trị lớn nhất và ghi vào ô J3.

Lời giải:
- Tại ô I3 ta gõ công thức
= IF(F3<G3, IF(F3<H3, "F3 bé nhất", "H3 bé nhất"), IF(G3<H3," G3 bé nhất","H3 bé nhất")) 
- Tại ô J3 ta gõ công thức
= IF(F3>G3, IF(F3>H3, "F3 lớn nhất", "H3 lớn nhất"), IF(G3>H3," G3 lớn nhất","H3 lớn nhất"))

* Các bạn từ từ nghiền ngẫm nhé!

2. Hàm IFS :

Chỉ áp dụng cho Office 365 & Office 2016, và nên hạn chế sử dụng nhé.

Cú pháp:

= IFS(logical_test1, value_if_true1, [logical_test2, value_if_true2], [logical_test3, value_if_true3],…)
Trong đó logical_test1, value_if_true1 là bắt buộc phải có trong công thức.

Giải thích:


  • Hàm IFS kiểm tra xem một hoặc nhiều điều kiện có được đáp ứng hay không và trả về một giá trị tương ứng với điều kiện TRUE đầu tiên. Hàm IFS có thể chiếm vị trí của nhiều câu lệnh IF lồng nhau, đồng thời giúp việc đọc các câu lệnh có nhiều điều kiện trở nên dễ dàng hơn rất nhiều.
  • Hàm hỗ trợ tối đa 127 điều kiện khác nhau. Nhưng khuyến cáo các bạn không sử dụng quá nhiều điều kiện cùng các câu lệnh IF và IFS. Bạn sẽ rất khó kiểm soát được dòng lệnh, và kết quả.

Ví dụ: để lấy ngày trong tuần điền vào các ô trên cột G, ta dùng công thức
=IFS(F2=1,$D$2,F2=2,$D$3,F2=3,$D$4,F2=4,$D$5,F2=5,$D$6,F2=6,$D$7,F2=7,$D$8)



Chú ý:
  • Nếu logical_test được cung cấp mà không có value_if_true tương ứng, hàm này sẽ hiển thị thông báo lỗi "You've entered too few arguments for this function" (Bạn đã nhập quá ít tham đối cho hàm này).
  • Nếu tham đối logical_test được đánh giá và giải thành một giá trị khác không phải TRUE hoặc FALSE, hàm này sẽ trả về lỗi #VALUE!
  • Nếu không tìm thấy các điều kiện TRUE nào, hàm này sẽ trả về lỗi #N/A

3. Hàm IFNA:

Hàm IFNA trả về giá trị được bạn chỉ định nếu một công thức của bạn trả về giá trị #N/A, nếu không nó trả về kết quả của công thức.

Ví dụ: 
Chúng ta có 1 danh sách mã ZIPCODE không đầy đủ của các tỉnh thành Việt Nam, và 1 danh sách là nhân viên của công ty vận chuyển AZ. Yêu cầu đặt ra là ta phải điền mã ZIPCODE cho từng nhân viên trong bảng danh sách nhân viên, nếu chưa tìm ra thì điền "not found".
 


Nếu ta dùng hàm VLOOKUP đơn để dò tìm thì sẽ phát sinh lỗi #N/A như ở cột K. Nguyên nhân là Cần Thơ chưa có trong danh sách ZIPCODE. Để khắc phục lỗi này chúng ta sẽ kết hợp hàm IFNA với hàm VLOOPKUP như sau:


Giải thích:
Ở đây công thức của bạn là hàm VLOOPUP, nếu hàm VLOOPKUP tìm không ra Cần Thơ trong danh sách ZIPCODE, thì VLOOPUP sẽ trả và giá trị #N/A. Và hiển nhiên nếu tìm ra thì giá trị trả về là kết quả của công thức VLOOPKUP.

4. Hàm IFERROR (IF ERROR)

Hàm IFERROR sẽ trả về một giá trị do bạn chỉ định nếu như công thức của bạn xảy ra lỗi. Ngược lại nếu 0 xảy ra lỗi, nó sẽ trả về kết quả của công thức.
  • Bạn có thể dùng hàm IFERROR để tìm và xử lý lỗi trong công thức của bạn.
  • Hàm này tương tự như hàm IFNA, nhưng phạm vi bẫy lỗi rộng hơn.
Đối với bài ví dụ ở trên, ta thay thế hàm IFNA bằng hàm IFERROR thfi kết quả trả về cũng không thay đổi nhé.


Nếu các bạn có thắc mắc gì xin hãy comment bên dưới. top5.asia sẽ trả lời sớm nhất cho các bạn. Chúc các bạn thành công!

Post a Comment

Previous Post Next Post