1. XLOOKUP là gì?
XLOOKUP là hàm tra cứu giá trị trong một vùng dữ liệu (dọc hoặc ngang) và trả về giá trị tương ứng từ một vùng khác. Khác với VLOOKUP bị giới hạn tra cứu từ trái sang phải, XLOOKUP cho phép tra cứu theo mọi hướng, mặc định là tra cứu chính xác, và có sẵn tham số xử lý lỗi khi không tìm thấy kết quả.
⚠️ Lưu ý: XLOOKUP chỉ hoạt động trên Excel 365, Excel 2021 trở lên và Excel Online. Các phiên bản Excel 2019 trở về trước sẽ báo lỗi
#NAME?.
2. Cú pháp hàm XLOOKUP
=XLOOKUP(lookup_value, lookup_array, return_array, [if_not_found], [match_mode], [search_mode])
Giải thích các tham số
| Tham số | Bắt buộc | Ý nghĩa |
|---|---|---|
lookup_value |
✅ | Giá trị cần tìm |
lookup_array |
✅ | Vùng chứa giá trị cần tìm |
return_array |
✅ | Vùng chứa giá trị sẽ trả về |
if_not_found |
❌ | Giá trị hiển thị khi không tìm thấy (thay cho #N/A) |
match_mode |
❌ | 0 – chính xác (mặc định), -1 – gần nhất nhỏ hơn, 1 – gần nhất lớn hơn, 2 – ký tự đại diện |
search_mode |
❌ | 1 – từ trên xuống (mặc định), -1 – từ dưới lên, 2/-2 – tìm kiếm nhị phân |
3. Vì sao XLOOKUP vượt trội hơn VLOOKUP & HLOOKUP?
- ✅ Tra cứu cả chiều dọc lẫn chiều ngang – không cần phân biệt V hay H.
- ✅ Tra cứu sang trái mà không cần thủ thuật INDEX/MATCH.
- ✅ Mặc định khớp chính xác, tránh lỗi quên tham số
FALSEtrong VLOOKUP. - ✅ Xử lý lỗi tích hợp sẵn – không cần bọc thêm
IFERROR. - ✅ An toàn khi chèn/xóa cột, vì tham chiếu theo vùng chứ không theo số thứ tự cột.
- ✅ Hỗ trợ tra cứu đa điều kiện, tra cứu 2 chiều, trả về nhiều cột cùng lúc.
- ✅ Tốc độ xử lý nhanh hơn trên bảng dữ liệu lớn.
4. 10 ví dụ thực chiến với XLOOKUP
📘 Ví dụ 1 – Tra cứu cơ bản theo chiều dọc
Yêu cầu: Cho bảng nhân viên, tìm Họ tên dựa vào Mã nhân viên.
Bảng dữ liệu (A1:C6):
| A (Mã NV) | B (Họ tên) | C (Phòng ban) |
|---|---|---|
| NV001 | Nguyễn Văn An | Kinh doanh |
| NV002 | Trần Thị Bình | Kế toán |
| NV003 | Lê Văn Cường | Nhân sự |
| NV004 | Phạm Thị Dung | Marketing |
| NV005 | Hoàng Văn Em | IT |
Ô E1 nhập mã cần tìm: NV003
Công thức tại ô F1:
=XLOOKUP(E1, A2:A6, B2:B6)
Kết quả: Lê Văn Cường
Giải thích: Hàm tìm giá trị NV003 trong vùng A2:A6 và trả về giá trị tương ứng trong B2:B6.
📘 Ví dụ 2 – Tra cứu theo chiều ngang (thay HLOOKUP)
Yêu cầu: Bảng doanh thu các tháng nằm theo hàng ngang. Tìm doanh thu theo tên tháng.
Bảng dữ liệu (A1:E2):
| A | B | C | D | E |
|---|---|---|---|---|
| Tháng | T1 | T2 | T3 | T4 |
| Doanh thu | 120 | 150 | 180 | 210 |
Ô A4 nhập: T3
Công thức tại ô B4:
=XLOOKUP(A4, B1:E1, B2:E2)
Kết quả: 180
📘 Ví dụ 3 – Tra cứu sang trái (VLOOKUP không làm được)
Yêu cầu: Có Họ tên, cần tìm ngược lại Mã nhân viên.
Bảng dữ liệu (A1:B6):
| A (Mã NV) | B (Họ tên) |
|---|---|
| NV001 | Nguyễn Văn An |
| NV002 | Trần Thị Bình |
| NV003 | Lê Văn Cường |
| NV004 | Phạm Thị Dung |
| NV005 | Hoàng Văn Em |
Ô D1 nhập: Phạm Thị Dung
Công thức tại ô E1:
=XLOOKUP(D1, B2:B6, A2:A6)
Kết quả: NV004
Giải thích: lookup_array là cột B (bên phải), return_array là cột A (bên trái) – XLOOKUP xử lý dễ dàng.
📘 Ví dụ 4 – Tra cứu gần đúng (xếp loại theo doanh số)
Yêu cầu: Tính mức thưởng theo doanh số đạt được, dựa vào bảng xếp hạng.
Bảng xếp hạng (A1:C5):
| A (Doanh số từ) | B (Xếp loại) | C (Thưởng) |
|---|---|---|
| 0 | Yếu | 0 |
| 50 | Trung bình | 500.000 |
| 100 | Khá | 1.500.000 |
| 200 | Giỏi | 3.000.000 |
| 500 | Xuất sắc | 7.000.000 |
Ô E2 nhập doanh số thực tế: 157
Công thức tại ô F2:
=XLOOKUP(E2, $A$2:$A$6, $C$2:$C$6, , -1)
Kết quả: 1.500.000
Giải thích: Tham số -1 nghĩa là nếu không khớp chính xác, lấy giá trị gần nhất nhỏ hơn. Với doanh số 157, mốc gần nhất nhỏ hơn là 100 → Thưởng 1.500.000.
📘 Ví dụ 5 – Tra cứu với ký tự đại diện
Yêu cầu: Tìm giá của sản phẩm có tên chứa chữ "iPhone 15".
Bảng sản phẩm (A1:B5):
| A (Tên sản phẩm) | B (Giá) |
|---|---|
| Samsung Galaxy S24 | 22.000.000 |
| iPhone 14 Pro Max 256GB | 26.000.000 |
| iPhone 15 Pro 128GB | 28.000.000 |
| Xiaomi 14 | 18.000.000 |
| iPhone 16 | 30.000.000 |
Công thức tại ô D1:
=XLOOKUP("*iPhone 15*", A2:A6, B2:B6, , 2)
Kết quả: 28.000.000
Giải thích: Tham số match_mode = 2 cho phép dùng ký tự đại diện * (thay cho nhiều ký tự) và ? (thay cho 1 ký tự).
📘 Ví dụ 6 – Tra cứu từ dưới lên (lấy giao dịch mới nhất)
Yêu cầu: Một khách hàng có nhiều giao dịch, lấy số tiền của lần giao dịch gần nhất.
Bảng giao dịch (A1:C7) – sắp xếp theo ngày tăng dần:
| A (Ngày) | B (Khách hàng) | C (Số tiền) |
|---|---|---|
| 01/03/2026 | KH01 | 1.000.000 |
| 05/03/2026 | KH02 | 2.500.000 |
| 10/03/2026 | KH01 | 1.800.000 |
| 15/03/2026 | KH03 | 3.200.000 |
| 20/03/2026 | KH01 | 2.200.000 |
| 25/03/2026 | KH02 | 1.500.000 |
Ô E1 nhập: KH01
Công thức tại ô F1:
=XLOOKUP(E1, B2:B7, C2:C7, , , -1)
Kết quả: 2.200.000
Giải thích: Tham số search_mode = -1 nghĩa là tìm từ dưới lên trên. KH01 xuất hiện 3 lần, hàm sẽ trả về kết quả từ dòng cuối cùng (ngày 20/03) = 2.200.000.
📘 Ví dụ 7 – Trả về nhiều cột cùng lúc
Yêu cầu: Từ mã nhân viên, lấy ra cả Họ tên, Phòng ban, Lương chỉ trong một công thức.
Bảng dữ liệu (A1:D5):
| A (Mã) | B (Họ tên) | C (Phòng ban) | D (Lương) |
|---|---|---|---|
| NV001 | Nguyễn Văn An | Kinh doanh | 15.000.000 |
| NV002 | Trần Thị Bình | Kế toán | 12.000.000 |
| NV003 | Lê Văn Cường | Nhân sự | 13.000.000 |
| NV004 | Phạm Thị Dung | Marketing | 14.500.000 |
Ô F2 nhập: NV003
Công thức tại ô G2:
=XLOOKUP(F2, A2:A5, B2:D5)
Kết quả (tự động tràn sang G2, H2, I2):
| G2 | H2 | I2 |
|---|---|---|
| Lê Văn Cường | Nhân sự | 13.000.000 |
Giải thích: Khi return_array là vùng nhiều cột, XLOOKUP sẽ tự động trả về toàn bộ hàng tương ứng (tính năng dynamic array của Excel 365).
📘 Ví dụ 8 – Tra cứu đa điều kiện
Yêu cầu: Tìm lương của nhân viên thoả đồng thời Phòng ban = "Kinh doanh" VÀ Chức vụ = "Trưởng phòng".
Bảng dữ liệu (A1:D6):
| A (Phòng ban) | B (Chức vụ) | C (Họ tên) | D (Lương) |
|---|---|---|---|
| Kinh doanh | Nhân viên | An | 10.000.000 |
| Kế toán | Trưởng phòng | Bình | 20.000.000 |
| Kinh doanh | Trưởng phòng | Cường | 25.000.000 |
| Nhân sự | Nhân viên | Dung | 9.000.000 |
| Kinh doanh | Phó phòng | Em | 18.000.000 |
Ô F1: Kinh doanh | Ô F2: Trưởng phòng
Công thức tại ô F3:
=XLOOKUP(1, (A2:A6=F1)*(B2:B6=F2), D2:D6)
Kết quả: 25.000.000
Giải thích: Biểu thức (A2:A6=F1)*(B2:B6=F2) tạo ra mảng 0/1, chỉ dòng nào thoả cả hai điều kiện mới = 1. XLOOKUP tìm giá trị 1 đầu tiên và trả về cột lương tương ứng.
📘 Ví dụ 9 – Tra cứu 2 chiều (thay INDEX/MATCH/MATCH)
Yêu cầu: Tìm doanh thu theo Miền (hàng) và Tháng (cột).
Bảng dữ liệu (A1:E4):
| A | B (T1) | C (T2) | D (T3) | E (T4) |
|---|---|---|---|---|
| Miền Bắc | 100 | 120 | 150 | 170 |
| Miền Trung | 80 | 95 | 110 | 125 |
| Miền Nam | 130 | 145 | 180 | 200 |
Ô G1: Miền Nam | Ô G2: T3
Công thức tại ô G3:
=XLOOKUP(G1, A2:A4, XLOOKUP(G2, B1:E1, B2:E4))
Kết quả: 180
Giải thích:
XLOOKUP(G2, B1:E1, B2:E4)trả về cả cột T3 →{150; 110; 180}- XLOOKUP ngoài cùng tìm "Miền Nam" trong cột A → lấy giá trị 180.
📘 Ví dụ 10 – Xử lý lỗi không cần IFERROR
Yêu cầu: Khi không tìm thấy mã, hiển thị thông báo thân thiện thay vì #N/A.
Bảng dữ liệu (A1:B4):
| A (Mã) | B (Họ tên) |
|---|---|
| NV001 | Nguyễn Văn An |
| NV002 | Trần Thị Bình |
| NV003 | Lê Văn Cường |
Ô D1 nhập: NV099 (mã không tồn tại)
Công thức tại ô E1:
=XLOOKUP(D1, A2:A4, B2:B4, "Không tìm thấy mã!")
Kết quả: Không tìm thấy mã!
Giải thích: Thay vì công thức cũ =IFERROR(VLOOKUP(...), "Không tìm thấy"), XLOOKUP xử lý ngay trong tham số thứ 4.
5. Các lỗi thường gặp và cách khắc phục
| Lỗi | Nguyên nhân | Cách xử lý |
|---|---|---|
#NAME? |
Excel của bạn không hỗ trợ XLOOKUP | Nâng cấp lên Excel 365/2021 hoặc dùng INDEX/MATCH |
#N/A |
Không tìm thấy giá trị | Dùng tham số if_not_found |
#VALUE! |
lookup_array và return_array khác kích thước |
Kiểm tra lại vùng dữ liệu |
#REF! |
Vùng tham chiếu đã bị xóa | Khôi phục lại cột/hàng dữ liệu |
#SPILL! |
Ô bên cạnh có dữ liệu chặn kết quả tràn | Xóa dữ liệu cản trở ở các ô liền kề |
| Kết quả sai khi kéo công thức | Quên cố định vùng | Dùng $ để khóa: $A$2:$A$100 |
6. Kết luận
XLOOKUP không đơn thuần là một "bản nâng cấp" của VLOOKUP – nó là một cuộc cách mạng trong cách chúng ta tra cứu dữ liệu trong Excel. Với cú pháp ngắn gọn, khả năng linh hoạt và hiệu năng vượt trội, XLOOKUP xứng đáng trở thành hàm tra cứu mặc định trong mọi workbook của bạn.
👉 Lời khuyên: Nếu bạn đang dùng Excel 365, hãy tập thói quen sử dụng XLOOKUP ngay hôm nay. Công việc xử lý dữ liệu của bạn sẽ nhanh và gọn hơn rất nhiều.
Chúc bạn thành công với Excel!