Index+Match+if: Dò tìm theo nhiều điều kiện và tìm giá trị gần nhất



Tình huống cần dùng:

Bạn có một bảng dữ liệu (ví dụ: Bảng giá vận chuyển). Bạn cần tìm giá trị ở cột D dựa trên hai điều kiện:

Điều kiện 1 (Chính xác): Phải đúng tên khu vực (Cột B = ô G6).

Điều kiện 2 (Gần nhất): Phải tìm mức khối lượng (Cột C) gần với mức thực tế (ô G7) nhất nhưng không vượt quá (kiểu dò tìm 1 trong MATCH).

Thông thường, MATCH chỉ nhận một vùng đơn lẻ, nên ta dùng IF để "lọc" vùng thỏa mãn điều kiện 1 trước, sau đó mới cho MATCH tìm kiếm trên kết quả đã lọc đó.

{=INDEX(D5:D10,MATCH(G7,IF(B5:B10=G6,C5:C10),1))}


note:nhấn Ctrl + Shift + Enter
Để tham số 1 trong hàm MATCH hoạt động chính xác, dữ liệu ở cột C (cột chứa giá trị để so sánh) nên được sắp xếp tăng dần theo từng nhóm điều kiện.


Nhận xét