Hàm MATCH, INDEX MATCH MATCH: Tra Cứu 2 Chiều Linh Hoạt
Chia sẻ
"Hướng dẫn chuyên sâu hàm MATCH và kết hợp INDEX MATCH MATCH để tra cứu 2 chiều trong Excel — thay thế VLOOKUP/HLOOKUP trong mọi tình huống."
1. Hàm MATCH — Tìm vị trí
=MATCH(lookup_value, lookup_array, [match_type])MATCH trả VỊ TRÍ (số thứ tự) của giá trị trong mảng, KHÔNG trả giá trị.
1.1. match_type
Giá trị | Ý nghĩa |
|---|---|
0 | Exact match (phổ biến nhất) |
1 | Less than or equal (dữ liệu sắp tăng) |
-1 | Greater than or equal (dữ liệu sắp giảm) |
1.2. Ví dụ
A | |
|---|---|
1 | An |
2 | Bình |
3 | Cường |
=MATCH("Bình", A1:A3, 0) → 2 (vị trí thứ 2)
=MATCH("Dung", A1:A3, 0) → #N/A (không tìm thấy)1.3. MATCH với wildcard
=MATCH("An*", A1:A10, 0) → Tìm ô bắt đầu bằng "An"
=MATCH("???", A1:A10, 0) → Tìm ô có đúng 3 ký tự2. INDEX — Lấy giá trị theo vị trí
=INDEX(array, row_num, [column_num])2.1. Ví dụ
A | B | |
|---|---|---|
1 | An | 100 |
2 | Bình | 200 |
3 | Cường | 300 |
=INDEX(B1:B3, 2) → 200 (dòng 2 của B1:B3)
=INDEX(A1:B3, 2, 1) → "Bình" (dòng 2, cột 1)
=INDEX(A1:B3, 3, 2) → 300 (dòng 3, cột 2)3. INDEX MATCH — Thay VLOOKUP
=INDEX(return_range, MATCH(lookup_value, lookup_range, 0))3.1. So sánh với VLOOKUP
Tính năng | VLOOKUP | INDEX MATCH |
|---|---|---|
Tra cứu trái | ❌ | ✅ |
Thêm/xóa cột | Lỗi col_index | ✅ Không ảnh hưởng |
Tốc độ (dữ liệu lớn) | Chậm | Nhanh |
Linh hoạt | Cơ bản | Rất linh hoạt |
3.2. Ví dụ: Tra cứu trái
Code | Tên | Lương |
|---|---|---|
NV01 | An | 10M |
NV02 | Bình | 12M |
Tìm Code từ Tên (tra cứu TRÁI):
=INDEX(A2:A100, MATCH("Bình", B2:B100, 0)) → "NV02"VLOOKUP không làm được vì chỉ tra từ trái sang phải!
4. INDEX MATCH MATCH — Tra cứu 2 chiều
=INDEX(data_range, MATCH(row_value, row_header, 0), MATCH(col_value, col_header, 0))4.1. Bài toán
Bảng doanh số:
Q1 | Q2 | Q3 | Q4 | |
|---|---|---|---|---|
An | 100 | 120 | 130 | 150 |
Bình | 80 | 95 | 110 | 120 |
Cường | 150 | 140 | 160 | 170 |
Tìm doanh số của "Bình" tháng "Q3":
=INDEX(B2:E4, MATCH("Bình", A2:A4, 0), MATCH("Q3", B1:E1, 0))
→ 1104.2. Phân tích
MATCH("Bình", A2:A4, 0)→ 2 (dòng thứ 2)MATCH("Q3", B1:E1, 0)→ 3 (cột thứ 3)INDEX(B2:E4, 2, 3)→ 110
4.3. Kết hợp Dropdown
Dropdown D1 = Nhân viên, Dropdown D2 = Quý:
=INDEX(B2:E4, MATCH(D1, A2:A4, 0), MATCH(D2, B1:E1, 0))Đổi dropdown → kết quả tự cập nhật!
5. MATCH với XLOOKUP (Excel 365)
=XLOOKUP(row_value, row_range, XLOOKUP(col_value, col_range, data_range))XLOOKUP lồng XLOOKUP thay INDEX MATCH MATCH — gọn hơn nhưng chỉ có trong Excel 365.
6. Ứng dụng nâng cao
6.1. Dynamic Table Header
Dropdown chọn metric → hiện cột tương ứng:
=INDEX(data, 0, MATCH(selected_metric, header, 0))row_num = 0 → trả CẢ CỘT.
6.2. Giá trị cuối cùng trong cột
=INDEX(A:A, MATCH(1, 0/(A:A<>""), 1))Hoặc đơn giản hơn với XLOOKUP:
=XLOOKUP("*", A:A, A:A, , 2, -1)6.3. MATCH trong VLOOKUP col_index
=VLOOKUP(A2, data, MATCH("Lương", header, 0), FALSE)Cột VLOOKUP tự động — không cần hard-code số!
6.4. Tra cứu nhiều điều kiện
INDEX MATCH với array formula:
=INDEX(D2:D100, MATCH(1, (A2:A100="KD")*(B2:B100="An"), 0))Tìm giá trị nơi Phòng = "KD" VÀ Tên = "An". Ctrl+Shift+Enter (CSE) hoặc Excel 365 tự dynamic.
7. Xử lý lỗi
7.1. MATCH không tìm thấy
=IFERROR(INDEX(B:B, MATCH(D1, A:A, 0)), "Không tìm thấy")7.2. MATCH approximate — Bảng thuế lũy tiến
Thu nhập | Thuế suất |
|---|---|
0 | 0% |
5000000 | 5% |
10000000 | 10% |
18000000 | 15% |
=INDEX(B2:B5, MATCH(D1, A2:A5, 1))match_type = 1: tìm giá trị <= lookup_value → đúng cho bảng thuế lũy tiến.
8. So sánh tất cả phương pháp tra cứu
Phương pháp | 1 chiều | 2 chiều | Tra trái | Đa điều kiện |
|---|---|---|---|---|
VLOOKUP | ✅ | ❌ | ❌ | ❌ |
HLOOKUP | ✅ (ngang) | ❌ | ❌ | ❌ |
INDEX MATCH | ✅ | ❌ | ✅ | ✅ (CSE) |
INDEX MATCH MATCH | ✅ | ✅ | ✅ | ✅ |
XLOOKUP | ✅ | ✅ (lồng) | ✅ | ❌ |
XLOOKUP XLOOKUP | ✅ | ✅ | ✅ | ❌ |
9. Mẹo INDEX MATCH
Luôn dùng match_type 0: Exact match cho hầu hết trường hợp
MATCH cho VLOOKUP col_index: Công thức tự điều chỉnh khi thêm cột
INDEX(,0) trả cả cột: Hữu ích cho dynamic reporting
IFERROR bọc ngoài: Phòng MATCH trả #N/A
Array MATCH cho đa điều kiện:
MATCH(1, (cond1)*(cond2), 0)
10. Tổng kết
INDEX MATCH MATCH là công thức tra cứu MẠNH NHẤT trong Excel truyền thống. Hiểu MATCH (tìm vị trí) + INDEX (lấy giá trị) = mở khóa mọi bài toán tra cứu: 1 chiều, 2 chiều, tra trái, đa điều kiện. Đây là kỹ năng BẮT BUỘC cho ai muốn master Excel.
Bình luận
Đăng nhập để tham gia bình luận
Đăng nhậpNhận bài viết mới nhất
Đăng ký để nhận thông báo khi có bài viết mới. Không spam, chỉ kiến thức chất lượng.
