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

Mục lục

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, hãy thiết lập hàm MATCH để định vị giá trị tra cứu trong cột dùng làm 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))

trong đó mục (B5: B15) và id (E5: E15) là các 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 so với một hàm 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 với 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 giống hệt nhau 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 hiện là tham chiếu tuyệt đối để cho phép sao chép mà không thay đổi. Giá trị tra cứu trong $ G5 là một tham chiếu hỗn hợp để chỉ khóa cột.

thú vị bài viết...