Skip to content

Edupedia

  • Home
  • Excel Tips
  • VBA Tips

Edupedia

  • Home » 
  • Excel Tips » 
  • Hướng Dẫn Sử Dụng Hàm INDEX MATCH Trong Excel: Từ Cơ Bản Đến Nâng Cao

Hướng Dẫn Sử Dụng Hàm INDEX MATCH Trong Excel: Từ Cơ Bản Đến Nâng Cao

By Edupedia Tháng 2 14, 2026 0
Hàm INDEX trong Excel hoạt động giống như tọa độ trên bản đồ
Table of Contents

Thời gian đọc ước tính: 18 phút

Những điểm chính

  • Sức mạnh vượt trội: Sự kết hợp INDEX và MATCH khắc phục các hạn chế của VLOOKUP, cho phép tìm kiếm dữ liệu theo mọi hướng (trái, phải, ngang, dọc).
  • Cơ chế hoạt động: Hàm INDEX trả về giá trị dựa trên tọa độ, trong khi hàm MATCH xác định vị trí tọa độ đó.
  • Tính linh hoạt: Xử lý tốt các tình huống phức tạp như tra cứu 2 chiều, tìm kiếm theo nhiều điều kiện, và làm việc với dữ liệu không được sắp xếp.
  • Hiệu suất: Tốc độ xử lý nhanh hơn VLOOKUP khi làm việc với các tập dữ liệu lớn.

Excel sở hữu kho tàng hơn 450 hàm tính toán, mang lại khả năng xử lý dữ liệu đáng kinh ngạc. Trong số các công cụ này, sự kết hợp giữa hàm INDEX và hàm MATCH luôn được đánh giá là kỹ thuật tra cứu dữ liệu mạnh mẽ và linh hoạt bậc nhất dành cho các chuyên gia phân tích.

Nhiều người dùng quen thuộc với VLOOKUP vì tính đơn giản, nhưng INDEX MATCH lại cung cấp giải pháp tối ưu cho những bài toán dữ liệu phức tạp mà VLOOKUP không thể giải quyết. Bài viết này sẽ phân tích chi tiết cách thức hoạt động của từng hàm và hướng dẫn bạn áp dụng combo này qua 10 ví dụ thực tế, từ cấp độ cơ bản đến nâng cao.

Hàm INDEX: Xác Định Giá Trị Dựa Trên Tọa Độ

Hàm INDEX hoạt động tương tự như hệ thống định vị GPS trên bản đồ. Khi bạn cung cấp tọa độ cụ thể (vĩ độ và kinh độ), hệ thống sẽ chỉ ra chính xác địa điểm đó nằm ở đâu.

Trong bảng tính Excel, thay vì vĩ độ và kinh độ, hàm INDEX yêu cầu bạn cung cấp số hàng và số cột. Dựa trên hai thông số này, hàm sẽ trích xuất giá trị nằm tại giao điểm đó trong một vùng dữ liệu xác định.

Hàm INDEX trong Excel hoạt động giống như tọa độ trên bản đồHàm INDEX trong Excel hoạt động giống như tọa độ trên bản đồ

Về mặt kỹ thuật, hàm INDEX sử dụng số thứ tự của hàng và cột để tìm một ô trong phạm vi đã chọn và trả về giá trị chứa trong ô đó.

Tìm ô trong Excel sử dụng số hàng và số cộtTìm ô trong Excel sử dụng số hàng và số cột

Nếu đứng độc lập, hàm INDEX ít có giá trị thực tiễn vì người dùng hiếm khi biết trước số hàng và số cột của dữ liệu cần tìm. Sức mạnh thực sự của nó chỉ được kích hoạt khi kết hợp với các hàm khác có khả năng tự động tìm ra các con số này, điển hình là hàm MATCH.

Cú pháp của hàm INDEX:

=INDEX(array, row_num, [col_num])
  • array: Vùng ô hoặc mảng hằng số mà bạn muốn tìm kiếm.
  • row_num: Số thứ tự của hàng chứa giá trị cần lấy.
  • [col_num]: Số thứ tự của cột chứa giá trị cần lấy (tùy chọn).

Hàm MATCH: Xác Định Vị Trí Của Giá Trị Tìm Kiếm

Hàm MATCH đóng vai trò là công cụ dò tìm vị trí. Nếu INDEX cần tọa độ để trả về giá trị, thì MATCH sẽ tìm ra tọa độ đó dựa trên một giá trị mẫu mà bạn cung cấp.

Nói cách khác, hàm MATCH trả về vị trí tương đối của một mục trong một vùng dữ liệu.

Ví dụ: Nếu bạn có một danh sách tên và muốn biết cái tên “Mark” nằm ở vị trí thứ mấy, hàm MATCH sẽ quét từ trên xuống dưới và trả về con số thứ tự chính xác.

Hàm Match trong Excel - Tìm vị trí tên MarkHàm Match trong Excel – Tìm vị trí tên Mark

Trong ví dụ trên, hàm trả về kết quả là 3, vì “Mark” nằm ở ô thứ 3 trong vùng chọn A1:A9.

Cú pháp của hàm MATCH:

=MATCH(lookup_value, lookup_array, [match_type])
  • lookup_value: Giá trị bạn muốn tìm kiếm.
  • lookup_array: Vùng ô chứa dữ liệu cần tìm.
  • [match_type]: (Tùy chọn) Xác định kiểu khớp dữ liệu. Tham số này rất quan trọng và có 3 giá trị:
    • 0: Tìm kiếm chính xác tuyệt đối (Exact match). Đây là lựa chọn phổ biến nhất.
    • 1: Tìm giá trị lớn nhất nhỏ hơn hoặc bằng giá trị tìm kiếm (yêu cầu dữ liệu sắp xếp tăng dần).
    • -1: Tìm giá trị nhỏ nhất lớn hơn hoặc bằng giá trị tìm kiếm (yêu cầu dữ liệu sắp xếp giảm dần).

Hiểu rõ cơ chế hoạt động riêng lẻ của hai hàm này là bước đệm quan trọng để chúng ta tiến hành kết hợp chúng thành một công cụ tra cứu dữ liệu hoàn chỉnh.

Kết Hợp INDEX và MATCH: Công Cụ Tra Cứu Tối Ưu

Nguyên lý hoạt động của sự kết hợp này rất logic: Hàm MATCH tìm vị trí (số hàng/cột), sau đó chuyển con số này cho hàm INDEX để lấy ra giá trị dữ liệu.

Dưới đây là các ví dụ thực tế minh họa cho sức mạnh của bộ đôi này.

Ví dụ 1: Tra cứu cơ bản (Thay thế VLOOKUP)

Chúng ta hãy bắt đầu với một tình huống đơn giản thường gặp: Tìm điểm số của một học sinh cụ thể từ bảng điểm.

Ví dụ 1 - Bảng điểm học sinhVí dụ 1 – Bảng điểm học sinh

Để tìm điểm của “Jim”, chúng ta sử dụng công thức sau:

=INDEX($A$2:$B$11, MATCH("Jim", $A$2:$A$11, 0), 2)

Phân tích công thức:

  1. MATCH("Jim", $A$2:$A$11, 0): Tìm vị trí của “Jim” trong cột A. Kết quả trả về là một con số (ví dụ: hàng thứ 4).
  2. INDEX($A$2:$B$11, [kết quả MATCH], 2): Lấy giá trị ở hàng thứ 4, cột thứ 2 (cột điểm số) trong vùng dữ liệu A2:B11.

Điểm của Jim sử dụng Index MatchĐiểm của Jim sử dụng Index Match

Mặc dù hàm VLOOKUP có thể giải quyết bài toán này dễ dàng, nhưng INDEX MATCH chứng tỏ sự vượt trội khi cấu trúc dữ liệu thay đổi.

Giả sử dữ liệu của bạn được trình bày theo hàng ngang thay vì cột dọc:

VLOOKUP không thể xử lý dữ liệu ngang (phải dùng HLOOKUP), nhưng INDEX MATCH vẫn hoạt động tốt chỉ với một chút điều chỉnh:

=INDEX($B$1:$K$2, 2, MATCH("Jim", $B$1:$K$1, 0))

Sử dụng Index Match với dữ liệu ngangSử dụng Index Match với dữ liệu ngang

Khả năng thích ứng với cả dữ liệu dọc và ngang là điểm cộng lớn đầu tiên của phương pháp này.

Ví dụ 2: Tra cứu ngược (Tìm kiếm từ phải sang trái)

Hạn chế lớn nhất của VLOOKUP là chỉ có thể tìm kiếm dữ liệu ở các cột bên phải của cột chứa giá trị dò tìm. INDEX MATCH loại bỏ hoàn toàn rào cản này.

Giả sử bạn cần tìm doanh số (cột A) của nhân viên “Michael” (cột C).

Dữ liệu tra cứu bên tráiDữ liệu tra cứu bên trái

Công thức giải quyết vấn đề:

=INDEX($A$2:$C$11, MATCH("Michael", C2:C11, 0), 1)

Công thức tra cứu bên trái - Combo INDEX MATCHCông thức tra cứu bên trái – Combo INDEX MATCH

Ở đây, hàm MATCH tìm vị trí của “Michael” trong cột C, và INDEX trả về giá trị tương ứng tại cột A. Đây là tính năng “Look to the Left” (Tra cứu sang trái) mà các nhà phân tích dữ liệu thường xuyên cần đến.

Ví dụ 3: Tra cứu 2 chiều (Ma trận dữ liệu)

Tra cứu 2 chiều là khi bạn cần tìm dữ liệu dựa trên giao điểm của cả hàng và cột. Ví dụ: Tìm điểm số của học sinh “Jim” trong môn “Math”.

Tập dữ liệu tra cứu 3 chiềuTập dữ liệu tra cứu 3 chiều

Công thức kết hợp hai hàm MATCH lồng vào INDEX:

=INDEX($B$2:$D$11, MATCH($F$3, $A$2:$A$11, 0), MATCH(G$2, $B$1:$D$1, 0))

Cách hoạt động:

  • Hàm MATCH thứ nhất tìm dòng chứa tên “Jim”.
  • Hàm MATCH thứ hai tìm cột chứa môn “Math”.
  • Hàm INDEX lấy dữ liệu tại giao điểm của dòng và cột đó.

Kết quả tra cứu 3 chiều - sử dụng combo INDEX MATCHKết quả tra cứu 3 chiều – sử dụng combo INDEX MATCH

Công thức này cực kỳ linh động. Bạn có thể thay đổi tên học sinh hoặc tên môn học, kết quả sẽ tự động cập nhật chính xác mà không cần sửa công thức.

Ví dụ 4: Tra cứu với nhiều điều kiện (Nối chuỗi)

Đôi khi, một tiêu chí tìm kiếm là không đủ để xác định duy nhất một giá trị. Ví dụ, bạn cần tìm điểm của “Mark Long” nhưng danh sách có cả “Mark Frost”.

Tập dữ liệu tra cứu nhiều tiêu chíTập dữ liệu tra cứu nhiều tiêu chí

Thay vì tạo cột phụ để nối tên như khi dùng VLOOKUP, bạn có thể thực hiện trực tiếp trong công thức mảng của INDEX MATCH:

=INDEX($C$2:$C$11, MATCH($E$3 & "|" & $F$3, $A$2:A11 & "|" & $B$2:$B$11, 0))

Lưu ý: Nếu bạn không sử dụng phiên bản Excel 365 mới nhất, bạn cần nhấn tổ hợp phím Ctrl + Shift + Enter để thực thi công thức mảng này.

Kết quả tra cứu nhiều tiêu chí - INDEX & MATCHKết quả tra cứu nhiều tiêu chí – INDEX & MATCH

Kỹ thuật này sử dụng ký tự & để nối tên và họ lại với nhau, tạo thành một khóa tìm kiếm duy nhất, đảm bảo độ chính xác tuyệt đối.

Ví dụ 5: Lấy dữ liệu của toàn bộ hàng hoặc cột

Một tính năng ít người biết của hàm INDEX là khả năng trả về mảng dữ liệu của cả một hàng hoặc cột khi bạn thiết lập tham số row_num hoặc col_num bằng 0.

Ví dụ: Bạn muốn tính tổng điểm tất cả các môn của học sinh “Jim”.

Lấy toàn bộ hàng với hàm IndexLấy toàn bộ hàng với hàm Index

Công thức kết hợp với hàm SUM:

=SUM(INDEX($B$2:$D$11, MATCH($F$4, $A$2:$A$11, 0), 0))

Khi tham số cột được đặt là 0, hàm INDEX trả về mảng giá trị {97, 70, 73} (điểm 3 môn của Jim). Hàm SUM sau đó sẽ cộng tổng các giá trị này. Kỹ thuật này rất hữu ích cho các báo cáo tổng hợp động.

Ví dụ 6: Xếp loại học sinh (Tra cứu tương đối)

Không phải lúc nào chúng ta cũng tìm kiếm chính xác. Trong trường hợp xếp loại dựa trên điểm số, chúng ta cần tìm kiếm trong khoảng giá trị (Approximate Match).

Dữ liệu xếp loại học sinhDữ liệu xếp loại học sinh

Quy tắc: Điểm < 33 là F, 33-50 là E, v.v.

Công thức sử dụng tham số 1 trong hàm MATCH:

=INDEX($F$3:$F$8, MATCH(B2, $E$3:$E$8, 1), 1)

Điều kiện bắt buộc: Dữ liệu trong cột điểm số tham chiếu ($E$3:$E$8) phải được sắp xếp tăng dần.

Kết quả xếp loại học sinh - Tra cứu tương đốiKết quả xếp loại học sinh – Tra cứu tương đối

Nếu dữ liệu xếp loại của bạn được sắp xếp giảm dần, VLOOKUP sẽ báo lỗi, nhưng INDEX MATCH vẫn xử lý được bằng cách đổi tham số MATCH thành -1.

Tra cứu tương đối để tìm loại học sinhTra cứu tương đối để tìm loại học sinh

Công thức cho dữ liệu giảm dần:

=INDEX($F$3:$F$8, MATCH(B2, $E$3:$E$8, -1), 1)

Ví dụ 7: Tra cứu phân biệt chữ hoa, chữ thường

Các hàm tìm kiếm mặc định trong Excel không phân biệt chữ hoa và chữ thường (“Jim” và “jim” được coi là giống nhau). Để xử lý dữ liệu nhạy cảm với kiểu chữ, chúng ta cần kết hợp thêm hàm EXACT.

Dữ liệu cho tra cứu phân biệt chữ hoa thườngDữ liệu cho tra cứu phân biệt chữ hoa thường

Công thức mảng:

=INDEX($B$2:$B$11, MATCH(TRUE, EXACT(D3, A2:A11), 0), 1)

Thực hiện tra cứu phân biệt chữ hoa thường với Index MatchThực hiện tra cứu phân biệt chữ hoa thường với Index Match

Hàm EXACT sẽ so sánh chính xác từng ký tự và trả về mảng TRUE/FALSE. Hàm MATCH sau đó tìm vị trí của giá trị TRUE duy nhất trong mảng đó.

Ví dụ 8: Tìm giá trị gần nhất (Closest Match)

Bài toán: Tìm nhân viên có số năm kinh nghiệm gần nhất với yêu cầu (ví dụ: 2.5 năm). Kết quả có thể lớn hơn hoặc nhỏ hơn, miễn là độ lệch thấp nhất.

Tìm giá trị gần nhất - tập dữ liệuTìm giá trị gần nhất – tập dữ liệu

Chúng ta sử dụng hàm ABS (giá trị tuyệt đối) và MIN để tính toán độ lệch:

=INDEX($A$2:$A$15, MATCH(MIN(ABS(D2 - B2:B15)), ABS(D2 - $B$2:$B$15), 0))

Tìm giá trị gần nhất sử dụng combo INDEX MATCHTìm giá trị gần nhất sử dụng combo INDEX MATCH

Công thức này tính khoảng cách giữa giá trị mục tiêu và tất cả các giá trị trong danh sách, sau đó tìm ra khoảng cách nhỏ nhất để xác định vị trí nhân viên phù hợp.

Ví dụ 9: Sử dụng ký tự đại diện (Wildcard)

Khi bạn chỉ nhớ một phần của từ khóa hoặc dữ liệu không nhất quán, ký tự đại diện như dấu sao (*) là cứu cánh.

Ví dụ: Tìm giá trị vốn hóa của công ty có tên bắt đầu bằng “Apple”.

Dữ liệu Vốn hóa thị trường của các công tyDữ liệu Vốn hóa thị trường của các công ty

Công thức:

=INDEX($B$2:$B$10, MATCH(D2 & "*", $A$2:$A$10, 0), 1)

Sử dụng INDEX MATCH với Ký tự đại diệnSử dụng INDEX MATCH với Ký tự đại diện

Dấu * đại diện cho bất kỳ chuỗi ký tự nào phía sau. Vì vậy, “Apple*” sẽ khớp với “Apple Inc.”, “Apple Corp”, v.v. Lưu ý rằng hàm sẽ trả về kết quả đầu tiên tìm thấy.

Ví dụ 10: Tra cứu 3 chiều nâng cao (Nhiều vùng dữ liệu)

Đây là kỹ thuật nâng cao sử dụng cú pháp thứ hai của hàm INDEX: INDEX(reference, row_num, [col_num], [area_num]).

Giả sử bạn có 3 bảng điểm riêng biệt cho 3 kỳ thi: Unit Test, Mid Term, và Final. Bạn muốn tra cứu điểm dựa trên Tên, Môn học và Kỳ thi.

Tập dữ liệu Tra cứu 3 chiềuTập dữ liệu Tra cứu 3 chiều

Công thức phức hợp:

=INDEX(($B$3:$D$7, $B$11:$D$15, $B$19:$D$23), MATCH($F$5, $A$3:$A$7, 0), MATCH(G$4, $B$2:$D$2, 0), IF(G$3="Unit Test", 1, IF(G$3="Mid Term", 2, 3)))

Kết quả Tra cứu 3 chiều - sử dụng INDEX MATCHKết quả Tra cứu 3 chiều – sử dụng INDEX MATCH

Phần area_num (đối số cuối cùng) sử dụng hàm IF lồng nhau để quyết định xem INDEX sẽ lấy dữ liệu từ bảng nào (bảng 1, 2 hay 3) dựa trên tên kỳ thi.

Tại Sao INDEX MATCH Tốt Hơn VLOOKUP?

Dù VLOOKUP vẫn là “vua” về độ phổ biến, INDEX MATCH chiến thắng về mặt kỹ thuật và tính linh hoạt. Dưới đây là bảng so sánh tóm tắt lý do tại sao các chuyên gia ưu tiên INDEX MATCH:

  1. Tra cứu đa hướng: INDEX MATCH có thể nhìn sang trái, sang phải, lên trên, xuống dưới. VLOOKUP chỉ nhìn sang phải.
  2. An toàn khi chèn cột: Khi bạn chèn thêm cột mới vào bảng dữ liệu, công thức VLOOKUP (với số cột cố định) thường bị sai lệch. INDEX MATCH sử dụng tham chiếu động nên không bị ảnh hưởng.
  3. Không giới hạn kích thước dữ liệu: Với các tệp Excel chứa hàng ngàn dòng, INDEX MATCH thường xử lý nhanh hơn VLOOKUP vì nó chỉ trích xuất dữ liệu từ các cột cần thiết thay vì quét toàn bộ bảng.
  4. Xử lý dữ liệu linh hoạt: Khả năng làm việc với dữ liệu sắp xếp giảm dần hoặc dữ liệu ngang (thay thế HLOOKUP) là điểm cộng lớn.

Tuy nhiên, VLOOKUP vẫn có lợi thế là dễ học và dễ viết hơn đối với người mới bắt đầu. Nếu nhu cầu của bạn chỉ là tra cứu đơn giản, VLOOKUP vẫn là một lựa chọn tốt. Nhưng để làm chủ dữ liệu thực sự, INDEX MATCH là kỹ năng bắt buộc phải có.

FAQ (Câu Hỏi Thường Gặp)

Hàm INDEX MATCH có thay thế hoàn toàn được VLOOKUP không?
Về mặt chức năng, INDEX MATCH có thể làm mọi thứ VLOOKUP làm và hơn thế nữa. Tuy nhiên, trong các bảng tính đơn giản, VLOOKUP vẫn nhanh gọn hơn để viết.

Làm thế nào để xử lý lỗi #N/A khi dùng INDEX MATCH?
Bạn có thể lồng công thức vào trong hàm IFERROR. Ví dụ: =IFERROR(INDEX(...), "Không tìm thấy").

Tôi có cần sắp xếp dữ liệu trước khi dùng INDEX MATCH không?
Nếu bạn tìm kiếm chính xác (match_type = 0), bạn không cần sắp xếp dữ liệu. Chỉ cần sắp xếp khi tìm kiếm tương đối (match_type = 1 hoặc -1).

Tại sao công thức của tôi trả về lỗi #VALUE! khi dùng INDEX lấy cả cột?
Khi lấy cả cột (row_num = 0), kết quả là một mảng dữ liệu chứ không phải một giá trị đơn lẻ. Bạn cần lồng nó vào một hàm xử lý mảng như SUM, AVERAGE hoặc nhập dưới dạng công thức mảng trên Excel cũ.

Nguồn Tham Khảo

  1. Microsoft Support: Hàm INDEX
  2. Microsoft Support: Hàm MATCH
  3. Ablebits: Excel INDEX MATCH vs VLOOKUP
  4. ExcelJet: How to use INDEX and MATCH
Share
facebookShare on FacebooktwitterShare on TwitterpinterestShare on Pinterest
linkedinShare on LinkedinvkShare on VkredditShare on ReddittumblrShare on TumblrviadeoShare on ViadeobufferShare on BufferpocketShare on PocketwhatsappShare on WhatsappviberShare on ViberemailShare on EmailskypeShare on SkypediggShare on DiggmyspaceShare on MyspacebloggerShare on Blogger YahooMailShare on Yahoo mailtelegramShare on TelegramMessengerShare on Facebook Messenger gmailShare on GmailamazonShare on AmazonSMSShare on SMS
Post navigation
Previous post

Hàm FILTER Trong Excel: Hướng Dẫn Sử Dụng Và Ví Dụ Thực Tế Từ A-Z

Next post

Cách Xóa Định Dạng Bảng Trong Excel: Giữ Dữ Liệu Sạch Và Chuyên Nghiệp

Edupedia

Edupedia

Related Posts

Categories Excel Tips Hướng Dẫn Sử Dụng Hàm INDEX MATCH Trong Excel: Từ Cơ Bản Đến Nâng Cao

Cách Xóa Số 0 Ở Đầu Trong Excel: 6 Phương Pháp Hiệu Quả Nhất

Categories Excel Tips Hướng Dẫn Sử Dụng Hàm INDEX MATCH Trong Excel: Từ Cơ Bản Đến Nâng Cao

Cách Xóa Định Dạng Bảng Trong Excel: Giữ Dữ Liệu Sạch Và Chuyên Nghiệp

Categories Excel Tips Hướng Dẫn Sử Dụng Hàm INDEX MATCH Trong Excel: Từ Cơ Bản Đến Nâng Cao

Hàm FILTER Trong Excel: Hướng Dẫn Sử Dụng Và Ví Dụ Thực Tế Từ A-Z

Leave a Comment Hủy

Edupedia

Edupedia

Chọn các ô chứa số có số 0 ở đầu và biểu tượng cảnh báo màu vàng

Cách Xóa Số 0 Ở Đầu Trong Excel: 6 Phương Pháp Hiệu Quả Nhất

Tháng 2 14, 2026
Dữ liệu mẫu trong Excel trước khi chuyển đổi thành bảng

Cách Xóa Định Dạng Bảng Trong Excel: Giữ Dữ Liệu Sạch Và Chuyên Nghiệp

Tháng 2 14, 2026
Hàm INDEX trong Excel hoạt động giống như tọa độ trên bản đồ

Hướng Dẫn Sử Dụng Hàm INDEX MATCH Trong Excel: Từ Cơ Bản Đến Nâng Cao

Tháng 2 14, 2026
Dữ liệu mẫu bao gồm Tên, Khu vực và Doanh số bán hàng dùng cho hàm FILTER

Hàm FILTER Trong Excel: Hướng Dẫn Sử Dụng Và Ví Dụ Thực Tế Từ A-Z

Tháng 2 14, 2026
Ô A1 được chọn trong giao diện Excel với ký hiệu cột chữ và hàng số

R1C1 và A1 Trong Excel: Phân Biệt, Cách Dùng Và Ứng Dụng Thực Tế

Tháng 2 14, 2026
Copyright © 2026 Edupedia
Offcanvas
Offcanvas

  • Lost your password ?