Có thể bạn quan tâm: Cách Tính Irr Trên Excel: Hướng Dẫn Chi Tiết Từ Cơ Bản Đến Nâng Cao
Mở Đầu
Trong thế giới làm việc với dữ liệu, Excel luôn là công cụ không thể thiếu đối với nhiều ngành nghề – từ kế toán, tài chính, marketing cho tới quản lý dự án. Trong số hàng trăm hàm có sẵn trong Excel, VLOOKUP (viết tắt của “Vertical Lookup”) là một trong những hàm được sử dụng phổ biến nhất để tra cứu và trích xuất dữ liệu từ một bảng khác. Tuy nhiên, dù hàm này rất mạnh mẽ, nhiều người dùng vẫn gặp khó khăn trong việc áp dụng đúng cách, đặc biệt là khi dữ liệu phức tạp hoặc khi cần thực hiện các thao tác nâng cao.
Bài viết dưới đây sẽ cung cấp cho bạn một hướng dẫn chi tiết, từng bước một, giúp bạn không chỉ nắm vững cách sử dụng VLOOKUP cơ bản mà còn khám phá các kỹ thuật nâng cao, các lưu ý quan trọng, và so sánh với các hàm tương tự như XLOOKUP, INDEX-MATCH. Bạn sẽ học được:
- Cấu trúc và cú pháp của hàm VLOOKUP.
- Các trường hợp sử dụng thực tiễn (ví dụ: hợp nhất dữ liệu khách hàng, tạo báo cáo bán hàng, kiểm tra trùng lặp).
- Các lỗi thường gặp và cách khắc phục.
- Mẹo tối ưu hiệu suất khi làm việc với dữ liệu lớn.
- Khi nào nên chuyển sang XLOOKUP hoặc INDEX-MATCH để đạt hiệu quả tốt hơn.
Hãy cùng bắt đầu khám phá và biến VLOOKUP thành “cây bút phép” trong tay bạn!
Có thể bạn quan tâm: Cách Thêm Nhiều Dòng Trong Excel: Hướng Dẫn Chi Tiết Từ Cơ Bản Đến Nâng Cao
1. Hiểu Rõ Cú Pháp Của Hàm VLOOKUP
1.1. Cú pháp cơ bản
VLOOKUP(lookup_value, table_array, col_index_num, range_lookup)
- lookup_value: Giá trị bạn muốn tìm kiếm. Có thể là một ô chứa dữ liệu (ví dụ: A2) hoặc một giá trị cố định (ví dụ: “Apple”).
- table_array: Vùng dữ liệu mà bạn sẽ tra cứu. Phải bao gồm cột chứa lookup_value ở vị trí đầu tiên (cột trái nhất) và các cột chứa dữ liệu trả về.
- col_index_num: Số thứ tự của cột trong
table_arraymà bạn muốn trả về kết quả. Đánh số bắt đầu từ 1 (cột đầu tiên củatable_array). - range_lookup (tùy chọn):
TRUE(hoặc bỏ trống) cho tìm kiếm tương đối (khoảng),FALSEcho tìm kiếm chính xác. Hầu hết các trường hợp thực tế nên dùngFALSEđể tránh lỗi.
1.2. Ví dụ minh hoạ
Giả sử chúng ta có bảng Sản phẩm (cột A: Mã SP, cột B: Tên SP, cột C: Giá):
| A (Mã SP) | B (Tên SP) | C (Giá) |
|---|---|---|
| P001 | Bút bi | 2,500 |
| P002 | Sổ ghi chép | 12,000 |
| P003 | Thước kẻ | 3,000 |
Nếu muốn tìm giá của sản phẩm có mã P002, công thức sẽ là:
=VLOOKUP("P002", A2:C4, 3, FALSE)
Kết quả trả về 12,000.
Có thể bạn quan tâm: Sắp Xếp Thứ Tự Trong Excel: Hướng Dẫn Chi Tiết Từ Cơ Bản Đến Nâng Cao
2. Các Bước Thực Hiện VLOOKUP Trong Thực Tế
2.1. Xác định dữ liệu nguồn và dữ liệu mục tiêu
- Dữ liệu nguồn: Bảng chứa thông tin đầy đủ (ví dụ: danh sách khách hàng, sản phẩm, nhân viên).
- Dữ liệu mục tiêu: Bảng bạn muốn bổ sung thông tin (ví dụ: bảng order cần thêm tên khách hàng dựa trên mã KH).
2.2. Đảm bảo cột khóa (key column) ở vị trí đầu tiên
VLOOKUP luôn tìm kiếm lookup_value ở cột đầu tiên của table_array. Nếu cột khóa không phải là cột đầu tiên, bạn có thể:
- Sắp xếp lại bảng (cắt và dán) để đưa cột khóa lên đầu.
- Sử dụng hàm CHOOSE để tái cấu trúc vùng dữ liệu tạm thời:
=VLOOKUP(A2, CHOOSE({1,2}, B2:B100, C2:C100), 2, FALSE)
(Ở đây,CHOOSEtạo một mảng mới trong đó cột B trở thành cột 1, cột C là cột 2.)
2.3. Thiết lập công thức
- Nhập công thức VLOOKUP vào ô mục tiêu đầu tiên.
- Kéo công thức xuống (drag) để áp dụng cho các dòng còn lại.
- Kiểm tra định dạng kết quả (số, ngày, văn bản) để tránh lỗi hiển thị.
2.4. Kiểm tra kết quả và xử lý lỗi
- Nếu công thức trả về #N/A, nghĩa là không tìm thấy giá trị khớp.
- Kiểm tra xem có lỗi chính tả, khoảng trắng thừa, hoặc định dạng (số dạng text vs number).
- Sử dụng hàm TRIM, CLEAN, VALUE để làm sạch dữ liệu.
- Nếu trả về #REF!, thường do
col_index_numvượt quá số cột trongtable_array. - Nếu trả về #VALUE!, có thể do
lookup_valuelà một mảng hoặcrange_lookupkhông hợp lệ.
3. Ứng Dụng Thực Tế Của VLOOKUP
3.1. Hợp Nhất Dữ Liệu Khách Hàng
Kịch bản: Bạn có hai bảng – Bảng A chứa danh sách đơn hàng (cột A: Mã KH, cột B: Số Lượng), Bảng B chứa thông tin khách hàng (cột A: Mã KH, cột B: Tên KH, cột C: Địa chỉ). Bạn muốn trong Bảng A hiển thị tên và địa chỉ khách hàng.
Công thức:
- Tên KH (ô C2):
=VLOOKUP(A2, Sheet2!$A$2:$C$500, 2, FALSE) - Địa chỉ (ô D2):
=VLOOKUP(A2, Sheet2!$A$2:$C$500, 3, FALSE)
Kéo công thức xuống để tự động điền cho toàn bộ danh sách đơn hàng.
3.2. Kiểm Tra Trùng Lặp Dữ Liệu
Bạn có danh sách nhân viên mới và muốn kiểm tra xem họ đã tồn tại trong hệ thống chưa.
=IF(ISNA(VLOOKUP(A2, ExistingEmployees!$A$2:$A$1000, 1, FALSE)), "Mới", "Đã có")
Kết quả sẽ cho biết “Mới” hoặc “Đã có” cho mỗi nhân viên.
3.3. Tính Tổng Giá Trị Bán Hàng Theo Mã Sản Phẩm
Giả sử bảng Sales (cột A: Mã SP, cột B: Số Lượng) và bảng Products (cột A: Mã SP, cột B: Giá). Bạn muốn tính tổng doanh thu cho mỗi dòng bán hàng.
=VLOOKUP(A2, Products!$A$2:$B$200, 2, FALSE) B2
Sau đó, dùng SUM hoặc PivotTable để tổng hợp.
4. Xử Lý Các Lỗi Thường Gặp
| Lỗi | Nguyên nhân | Cách khắc phục |
|---|---|---|
| #N/A | Không có khớp, khoảng trắng thừa, định dạng không giống nhau | Dùng TRIM, CLEAN, VALUE; kiểm tra dữ liệu nguồn; dùng IFERROR để ẩn lỗi |
| #REF! | col_index_num quá lớn hoặc bảng đã bị xóa/di chuyển | Kiểm tra lại số cột; sử dụng tên vùng (named range) để cố định vùng |
| #VALUE! | Tham số không hợp lệ (ví dụ: range_lookup không phải TRUE/FALSE) | Đảm bảo cú pháp đúng; chuyển TRUE/FALSE sang 0/1 nếu cần |
| #NAME? | Tên hàm viết sai hoặc Excel không nhận dạng hàm (phiên bản cũ) | Kiểm tra chính tả; đảm bảo Excel hỗ trợ VLOOKUP (có từ Excel 2000) |
Kỹ thuật ẩn lỗi: Sử dụng IFERROR hoặc IFNA để trả về giá trị mặc định thay vì hiển thị lỗi.
=IFERROR(VLOOKUP(A2, Table!$A$2:$D$500, 4, FALSE), "Không có dữ liệu")
5. Tối Ưu Hiệu Suất Khi Dữ Liệu Lớn
5.1. Sử Dụng Định Dạng Bảng (Excel Table)

Có thể bạn quan tâm: Cách Căn Chỉnh Ô Trong Excel: Hướng Dẫn Chi Tiết Từ Cơ Bản Đến Nâng Cao
Khi biến dải dữ liệu thành Table (Ctrl + T), bạn có thể:
- Tránh lỗi khi thêm/xóa hàng (địa chỉ tự động mở rộng).
- Sử dụng tên bảng trong công thức:
=VLOOKUP(A2, ProductsTable, 3, FALSE)
5.2. Giảm Phạm Vi Tìm Kiếm
Thay vì dùng toàn bộ cột (A:B), hãy giới hạn phạm vi chính xác (A2:B1000). Điều này giảm thời gian tính toán đáng kể.
5.3. Tránh Sử Dụng VLOOKUP Trong Các Công Thức Mảng (Array Formula)
Nếu có thể, tách ra các công thức VLOOKUP riêng lẻ thay vì lồng trong các công thức mảng phức tạp, giúp Excel tính toán nhanh hơn.
5.4. Tận Dụng Tính Năng Calculation Options
- Vào Formulas > Calculation Options > Manual khi làm việc với bảng lớn.
- Khi hoàn thành, nhấn F9 để tính toán lại.
5.5. Sử Dụng XLOOKUP hoặc INDEX-MATCH Khi Cần
- XLOOKUP (Excel 365/2026 trở lên) hỗ trợ tìm kiếm cả từ trái sang phải và phải sang trái, không cần cột đầu tiên.
- INDEX-MATCH thường nhanh hơn VLOOKUP trong các bảng cực lớn vì không cần duyệt toàn bộ cột.
6. So Sánh VLOOKUP, XLOOKUP và INDEX-MATCH
| Tiêu chí | VLOOKUP | XLOOKUP | INDEX-MATCH |
|---|---|---|---|
| Tìm kiếm | Chỉ từ trái sang phải | Cả trái → phải và phải → trái | Cả hai chiều (kết hợp) |
| Cột khóa | Phải ở cột đầu tiên | Không yêu cầu | Không yêu cầu |
| Khả năng trả về nhiều cột | Cần lặp lại công thức cho mỗi cột | Có thể trả về mảng (spill) | Cần kết hợp nhiều công thức |
| Xử lý lỗi | Cần IFERROR/IFNA | Có tham số if_not_found | Cần IFERROR/IFNA |
| Hiệu suất | Chậm hơn trong bảng lớn | Tối ưu hơn, đặc biệt với dữ liệu lớn | Thường nhanh hơn VLOOKUP |
| Độ tương thích | Tất cả phiên bản Excel | Excel 365, 2026 trở lên | Tất cả phiên bản Excel |
Khi nào nên dùng VLOOKUP?
– Khi làm việc trên phiên bản Excel cũ không hỗ trợ XLOOKUP.
– Khi dữ liệu không quá lớn và cột khóa đã ở vị trí đầu tiên.
Khi nào chuyển sang XLOOKUP?
– Khi cần tìm kiếm ngược (right‑to‑left).
– Khi muốn trả về nhiều giá trị trong một công thức duy nhất.
Khi nào dùng INDEX-MATCH?
– Khi muốn tối ưu tốc độ trên bảng hàng chục hoặc trăm nghìn dòng.
– Khi cần độ linh hoạt cao (ví dụ: tìm kiếm dựa trên nhiều tiêu chí).
7. Thực Hành: Bài Tập Tự Làm
Bài 1: Tra cứu giá bán
Bạn có bảng Giá Bán (cột A: Mã SP, cột B: Giá) và bảng Đơn Hàng (cột A: Mã SP, cột B: Số Lượng). Tạo cột Thành Tiền trong Đơn Hàng bằng cách sử dụng VLOOKUP.
Giải pháp:
=VLOOKUP(A2, Prices!$A$2:$B$500, 2, FALSE) B2
Bài 2: Kiểm tra khách hàng mới
Trong Sheet1, cột A chứa danh sách mã KH mới. Trong Sheet2, cột A chứa danh sách mã KH đã có. Đánh dấu “Mới” hoặc “Đã có”.
Giải pháp:
=IF(ISNA(VLOOKUP(A2, Sheet2!$A$2:$A$1000, 1, FALSE)), "Mới", "Đã có")
Bài 3: Trả về nhiều cột cùng lúc (Excel 365)
Sử dụng XLOOKUP để trả về Tên và Địa chỉ của khách hàng trong một công thức duy nhất.
= XLOOKUP(A2, Customers!$A$2:$A$500, Customers!$B$2:$C$500)
Kết quả sẽ “spill” ra hai cột kế bên.
8. Kết Luận
Hàm VLOOKUP là một trong những công cụ mạnh mẽ và linh hoạt nhất trong Excel để thực hiện tra cứu dữ liệu. Bằng cách nắm vững cú pháp, hiểu rõ các tham số và lưu ý các lỗi thường gặp, bạn có thể:
- Tự động hoá quy trình hợp nhất dữ liệu.
- Tiết kiệm thời gian so với việc nhập liệu thủ công.
- Nâng cao độ chính xác trong các báo cáo và phân tích.
Tuy nhiên, như bất kỳ công cụ nào, VLOOKUP cũng có giới hạn – nhất là khi làm việc với dữ liệu cực lớn hoặc cần tra cứu ngược. Khi gặp những trường hợp này, hãy cân nhắc chuyển sang XLOOKUP hoặc INDEX-MATCH để tối ưu hiệu suất và tính linh hoạt.
Hy vọng sau khi đọc bài viết này, bạn đã có được một bộ công cụ đầy đủ để áp dụng VLOOKUP trong mọi tình huống thực tế. Hãy thực hành, thử nghiệm và dần dần bạn sẽ trở thành “bậc thầy” trong việc xử lý dữ liệu bằng Excel!
Tài nguyên bổ sung
– Video hướng dẫn VLOOKUP trên YouTube: “Excel VLOOKUP for Beginners”.
– Trang Microsoft Docs: VLOOKUP function.
– Sách “Excel Power Users” – Chương 4: Tra cứu và tham chiếu dữ liệu.

Tiến sĩ Lê Thống Nhất sinh năm 1955 tại Nghệ An, là nhà giáo, nhà báo và doanh nhân trong lĩnh vực giáo dục. Ông từng giảng dạy Toán học tại Trường THPT Chuyên Phan Bội Châu và đảm nhiệm nhiều vai trò trong ngành giáo dục, từ viết sách, biên soạn tài liệu đến sáng lập các dự án hỗ trợ học tập trực tuyến.
Ông là người sáng lập BigSchool – nền tảng giáo dục trực tuyến kết nối giáo viên và học sinh cả nước. Ngoài ra, ông còn nổi tiếng với vai trò tác giả, diễn giả truyền cảm hứng và khách mời trên nhiều chương trình truyền hình, trong đó có “Ai là triệu phú” trên truyền hình VTV.
Trong suốt sự nghiệp, Tiến sĩ Lê Thống Nhất đã nhận nhiều giải thưởng giáo dục và được biết đến như một người luôn đổi mới, ứng dụng công nghệ vào dạy và học, góp phần lan tỏa tri thức và niềm say mê học tập cho thế hệ trẻ.
