Xin nhờ các bạn giúp mình về hàm if. (1 người xem)

Người dùng đang xem chủ đề này

tranquangtriet

Thành viên mới
Tham gia
18/5/10
Bài viết
15
Được thích
0
mình có nhiều hàm if lồng vào như sau
=IF(A1<16.2,14,IF(A1<20.4,20,IF(A1<26.2,25,IF(A1<32.6,32,IF(A1<40.8,40,IF(A1<51.4,50)))))).
Vì mình thấy làm như vậy thì quá dài, mà dễ nhập sai, đặc biệt khi thay đổi giá trị thì sửa công thức rất mệt. Nên mình mong các bạn biết có thể giúp mình 1 hàm nào đó tốt hơn, mình thì đang bị kẹt tại chỗ khi sử dụng hàm vlookup nhưng khi dò thì trả về giá trị lớn nhất và nhỏ hơn giá trị cần dò nên không dùng được, mình cần hàm vlookup trả về giá trị nhỏ nhất lớn hơn giá trị dò thì đúng với công thức IF dài ngoằn trên. Mong các cao thủ giúp mình. xin cảm ơn trước
 

File đính kèm

mình có nhiều hàm if lồng vào như sau
=IF(A1<16.2,14,IF(A1<20.4,20,IF(A1<26.2,25,IF(A1<32.6,32,IF(A1<40.8,40,IF(A1<51.4,50)))))).
Vì mình thấy làm như vậy thì quá dài, mà dễ nhập sai, đặc biệt khi thay đổi giá trị thì sửa công thức rất mệt. Nên mình mong các bạn biết có thể giúp mình 1 hàm nào đó tốt hơn, mình thì đang bị kẹt tại chỗ khi sử dụng hàm vlookup nhưng khi dò thì trả về giá trị lớn nhất và nhỏ hơn giá trị cần dò nên không dùng được, mình cần hàm vlookup trả về giá trị nhỏ nhất lớn hơn giá trị dò thì đúng với công thức IF dài ngoằn trên. Mong các cao thủ giúp mình. xin cảm ơn trước
Gửi file excel + nêu yêu cầu <-- Cách khác.
 
mình cảm ơn bạn rất là nhiều. Bạn có thể giải thích công thức để mình hiểu rõ hơn được không.
À! tôi có xem lại và bạn nên bỏ dấu bằng "=" trong công thức, nó sẽ là:
H3=OFFSET($E$2,SUMPRODUCT(--(G3>C3:C14))+1,) mà thôi:
1. Hàm SUMPRODUCT(--(G3>C3:C14))+1: báo số dòng cho OFFSET() để nó đang đứng tại E2 thì phải nhảy xuống thêm bao nhiêu dòng tương ứng với điều kiện G3>C3:C14 để truy xuất ra kết quả.
Ví dụ:
a/ G3=14 thì trong dãy từ C3:C14 không có dòng nào thỏa điều kiện nhỏ hơn 14 cả nên nó trả về 1 mảng {0;0;0;0;0;0;0;0;0;0}, nên Sumproduct({0;0;0;0;0;0;0;0;0;0})+1 = 1. Đang từ E2, nhảy xuống 1 dòng là E3, giá trị ô E3 = 20.
b/ G3=18 thì 18 so lớn hơn với dãy C3:C14 ra kết quả {1;0;0;0;0;0;0;0;0;0}, Sumproduct({1;0;0;0;0;0;0;0;0;0})+1 = 2. Đang từ E2, nhảy xuống 2 dòng là E4, giá trị ô E4 = 25. Cứ tiếp tục luận như vậy.​
2. Dấu "--" trước điều kiện (G3>C3:C14) dùng để biến các kết quả trị luận lý {TRUE;FALSE} được tạo sau khi so sánh điều kiện về giá trị số hoặc 1 (nếu là TRUE) hoặc 0 (nếu là FALSE).

Chúc bạn ngày vui.
 

Bài viết mới nhất

Back
Top Bottom