Menu

Tìm hiểu về cách sử dụng hàm INDEX kết hợp MATCH để tra cứu linh hoạt hơn VLOOKUP

Tống Hạo Kế 04/06/2026 10:42 458 lượt xem 2 trả lời

Chào mọi người,

Dạo gần đây mình thấy nhiều bài viết chia sẻ về các hàm tra cứu như VLOOKUP, HLOOKUP, XLOOKUP. Hôm nay, mình muốn chia sẻ thêm một cách kết hợp 2 hàm cũng rất mạnh mẽ và linh hoạt là INDEXMATCH. Tuy không mới nhưng nó giải quyết được nhiều hạn chế của VLOOKUP mà có thể nhiều bạn chưa biết.

Tại sao lại dùng INDEX-MATCH thay vì VLOOKUP?

  • VLOOKUP chỉ có thể tra cứu từ trái sang phải.
  • VLOOKUP không thể tra cứu theo hàng (tương tự HLOOKUP nhưng INDEX-MATCH làm được cả hai).
  • Khi chèn thêm cột vào giữa bảng dữ liệu, VLOOKUP sẽ bị lỗi hoặc trả về kết quả sai, còn INDEX-MATCH thì không.

Cách hoạt động của INDEX-MATCH:

Về cơ bản, chúng ta dùng MATCH để tìm vị trí (số thứ tự hàng hoặc cột) của giá trị cần tra cứu trong một vùng dữ liệu, sau đó dùng INDEX để trả về giá trị tại vị trí đó trong một vùng dữ liệu khác (thường là cột hoặc hàng chứa kết quả).

Cú pháp:

=INDEX(mảng_kết_quả, MATCH(giá_trị_tra_cứu, mảng_tìm_kiếm, [kiểu_so_khớp]))

Trong đó:

  • mảng_kết_quả: Vùng chứa dữ liệu bạn muốn trả về kết quả.
  • giá_trị_tra_cứu: Giá trị bạn muốn tìm.
  • mảng_tìm_kiếm: Vùng mà bạn muốn tìm giá_trị_tra_cứu.
  • kiểu_so_khớp: Thường là 0 để tìm chính xác.

Ví dụ:

Giả sử bạn có bảng dữ liệu gồm Mã SP, Tên SP, Giá bán. Bạn muốn tìm Giá bán dựa vào Mã SP.

  • mảng_kết_quả: Cột Giá bán (ví dụ: C2:C100)
  • giá_trị_tra_cứu: Mã SP bạn muốn tìm (ví dụ: ô E2)
  • mảng_tìm_kiếm: Cột Mã SP (ví dụ: A2:A100)
  • kiểu_so_khớp: 0

Công thức sẽ là: =INDEX(C2:C100, MATCH(E2, A2:A100, 0))

Cách này rất hữu ích khi bạn cần tra cứu ở các cột bên trái hoặc khi cấu trúc bảng dữ liệu hay thay đổi. Mọi người đã sử dụng cách này chưa? Có mẹo nào hay hơn không, chia sẻ cùng mình nhé!

5

Cảm ơn bạn đã chia sẻ về cặp đôi INDEX-MATCH! Đúng như bạn nói, sự kết hợp này đúng là "cứu cánh" cho nhiều trường hợp mà VLOOKUP bó tay.

Mình cũng xin bổ sung thêm một điểm nữa là INDEX-MATCH còn vượt trội hơn VLOOKUP khi bạn cần chèn thêm cột vào bảng dữ liệu gốc. Với VLOOKUP, bạn sẽ phải sửa lại số cột trả về, còn INDEX-MATCH thì "tự động" xử lý ngon lành, đỡ tốn công sức sửa công thức.

Bạn có thể cho mình biết thêm về cách dùng INDEX-MATCH để tra cứu theo hàng không? Mình tò mò muốn xem nó hoạt động thế nào.

5

Chào bạn,

Cảm ơn bạn đã chia sẻ bài viết rất hữu ích về INDEX-MATCH. Đúng là sự kết hợp này cực kỳ linh hoạt và giải quyết được nhiều "điểm mù" của VLOOKUP, nhất là khi cần tra cứu ngược hoặc tra cứu trên nhiều cột/hàng.

Mình cũng hay dùng INDEX-MATCH, đặc biệt là khi file có cấu trúc phức tạp hoặc cần tra cứu theo điều kiện kép. Bạn có thể chia sẻ thêm một ví dụ thực tế về việc dùng INDEX-MATCH để tra cứu theo hàng không? Mình nghĩ sẽ giúp nhiều người hình dung rõ hơn.

4

Bạn cần đăng nhập để trả lời chủ đề này.

Đăng nhập Đăng ký