Công thức Excel: Tra cứu bên trái với INDEX và MATCH
Công thức Excel: Tra cứu bên trái với INDEX và MATCH

Công thức chung
=INDEX(range,MATCH(A1,id,0))
Tóm lược

Để thực hiện tra cứu bên trái với INDEX và MATCH, thiết lập Hàm MATCH để xác định giá trị tra cứu trong cột đóng vai trò là ID. Sau đó, sử dụng Hàm INDEX để lấy các giá trị tại vị trí đó. Trong ví dụ được hiển thị, công thức trong H5 là:

=INDEX(item,MATCH(G5,id,0))

Ở đâu mục (B5: B15) và Tôi (E5: E15) là phạm vi được đặt tên.

Giải trình

Một trong những lợi thế của việc sử dụng INDEX và MATCH trên một chức năng tra cứu khác như VLOOKUP là INDEX và MATCH có thể dễ dàng làm việc với các giá trị tra cứu trong bất kỳ cột nào của dữ liệu.

Trong ví dụ được hiển thị, các cột từ B đến E chứa dữ liệu sản phẩm có ID duy nhất trong cột E. Sử dụng ID làm giá trị tra cứu, bảng bên phải sử dụng INDEX và MATCH để truy xuất mặt hàng, màu sắc và giá chính xác.

Trong mỗi công thức, hàm MATCH được sử dụng để xác định vị trí (hàng) của sản phẩm như sau:

MATCH(G5,id,0) // returns 3

Giá trị tra cứu đến từ ô G5, mảng tra cứu là id dải ô đã đặt tên (E5: E15) và loại đối sánh được đặt thành không (0) để đối sánh chính xác. Kết quả là 3, vì ID 1003 xuất hiện ở hàng thứ ba của dữ liệu. giá trị này được trả về trực tiếp cho hàm INDEX dưới dạng số hàng và hàm INDEX trả về “áo phông”:

=INDEX(item,3) // returns "T-shirt"

Các công thức trong H5, I5 và J5 như sau:

=INDEX(item,MATCH(G5,id,0)) // get item
=INDEX(color,MATCH(G5,id,0)) // get color
=INDEX(price,MATCH(G5,id,0)) // get price

Lưu ý rằng hàm MATCH được sử dụng theo cùng một cách trong mỗi công thức. Sự khác biệt duy nhất trong các công thức là mảng được cung cấp cho INDEX. Khi MATCH trả về một kết quả (3 cho id 1003), chúng ta có:

=INDEX(item,3) // returns "T-shirt"
=INDEX(color,3) // returns "Black"
=INDEX(price,3) // returns 19

Không có phạm vi được đặt tên

Các phạm vi được đặt tên ở trên chỉ được sử dụng để thuận tiện. Các công thức tương đương không có phạm vi được đặt tên là:

=INDEX($B$5:$B$15,MATCH($G5,$E$5:$E$15,0)) // item
=INDEX($C$5:$C$15,MATCH($G5,$E$5:$E$15,0)) // color
=INDEX($D$5:$D$15,MATCH($G5,$E$5:$E$15,0)) // price

Phạm vi bây giờ là tài liệu tham khảo tuyệt đối để cho phép sao chép mà không cần thay đổi. Giá trị tra cứu trong $ G5 là tài liệu tham khảo hỗn hợp để chỉ khóa cột.

https://exceljet.net/formula/left-lookup-with-index-and-match