Hàm VLOOKUP trong Excel: Hướng dẫn chi tiết và ví dụ thực tế 2026
Khám phá cách sử dụng hàm VLOOKUP trong Excel một cách hiệu quả. Bài viết cung cấp công thức, ví dụ minh họa và những lưu ý quan trọng để bạn làm chủ hàm tra cứu mạnh mẽ này
Giới thiệu về hàm VLOOKUP trong Excel
Trong thế giới của các bảng tính, việc trích xuất và đối chiếu dữ liệu một cách nhanh chóng và chính xác là yếu tố then chốt để nâng cao hiệu suất công việc. Hàm VLOOKUP (Vertical Lookup) chính là một trong những giải pháp tối ưu nhất mà Microsoft Excel mang đến cho người dùng. Nó cho phép bạn tìm kiếm một giá trị cụ thể trong một cột của bảng tính và trả về một giá trị tương ứng trên cùng một hàng từ một cột khác. Điều này đặc biệt hữu ích khi bạn cần tra cứu thông tin từ các danh sách lớn, phức tạp, ví dụ như tìm tên sản phẩm dựa trên mã hàng, lấy đơn giá từ bảng danh mục, hay tra cứu thông tin nhân viên theo mã số.
Với khả năng dò tìm theo chiều dọc, hàm VLOOKUP giúp tiết kiệm đáng kể thời gian và giảm thiểu sai sót so với việc nhập liệu thủ công. Nó là công cụ không thể thiếu đối với những người làm kế toán, hành chính, nhân sự, bán hàng và bất kỳ ai thường xuyên làm việc với bảng tính Excel. Bài viết này sẽ đi sâu vào phân tích cách sử dụng hàm VLOOKUP, từ cú pháp cơ bản đến các ví dụ minh họa thực tế, giúp bạn khai thác tối đa sức mạnh của hàm tra cứu này.
Công thức và các tham số của hàm VLOOKUP
Để sử dụng hàm VLOOKUP hiệu quả, bạn cần hiểu rõ cấu trúc công thức và ý nghĩa của từng tham số:
Cú pháp cơ bản
Công thức chuẩn của hàm VLOOKUP như sau:
=VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup])
Giải thích các tham số
- lookup_value (Giá trị cần dò tìm): Đây là giá trị mà bạn muốn tìm kiếm trong cột đầu tiên của bảng dữ liệu. Giá trị này có thể là một số, văn bản, ngày tháng hoặc một tham chiếu ô.
- table_array (Bảng dò tìm): Là phạm vi của các ô chứa dữ liệu mà bạn muốn dò tìm. Bảng này bắt buộc phải chứa cả cột chứa lookup_value và cột chứa thông tin bạn muốn trả về. Cột chứa lookup_value phải là cột ngoài cùng bên trái của table_array.
- col_index_num (Chỉ số cột trả về): Là số thứ tự của cột trong table_array mà bạn muốn lấy dữ liệu trả về. Cột đầu tiên trong table_array được đánh số là 1, cột thứ hai là 2, và cứ thế tiếp tục.
- [range_lookup] (Kiểu dò tìm): Là một giá trị logic (TRUE hoặc FALSE) xác định cách thức dò tìm.
- TRUE (hoặc bỏ trống): Dò tìm tương đối. Excel sẽ tìm kiếm giá trị gần đúng nhất với lookup_value. Điều kiện là cột đầu tiên của table_array phải được sắp xếp theo thứ tự tăng dần.
- FALSE: Dò tìm tuyệt đối. Excel sẽ tìm kiếm chính xác giá trị lookup_value. Nếu không tìm thấy, hàm sẽ trả về lỗi #N/A. Đây là tùy chọn thường được sử dụng nhất vì tính chính xác của nó.
Ví dụ minh họa cách sử dụng hàm VLOOKUP
Để hiểu rõ hơn về cách áp dụng hàm VLOOKUP, chúng ta hãy cùng xem xét một số ví dụ thực tế:
VD1: Hàm VLOOKUP để đánh giá xếp loại học sinh
Giả sử bạn có một bảng điểm của học sinh và một bảng phân loại điểm tương ứng với xếp loại. Bạn muốn tự động điền xếp loại cho từng học sinh dựa trên điểm số của họ.
Bảng điểm học sinh:
| Mã HS | Họ và tên | Điểm TB | Xếp loại |
|---|---|---|---|
| HS001 | Nguyễn Văn A | 8.5 | =VLOOKUP(C2,BảngXepLoai!$A$2:$B$5,2,FALSE) |
| HS002 | Trần Thị B | 6.2 | =VLOOKUP(C3,BảngXepLoai!$A$2:$B$5,2,FALSE) |
| HS003 | Lê Văn C | 4.8 | =VLOOKUP(C4,BảngXepLoai!$A$2:$B$5,2,FALSE) |
Bảng phân loại điểm (BảngXepLoai):
| Điểm TB tối thiểu | Xếp loại |
|---|---|
| 0 | Yếu |
| 5 | Trung bình |
| 7 | Khá |
| 8.5 | Giỏi |
Trong ví dụ này, chúng ta sử dụng range_lookup là FALSE để dò tìm chính xác điểm số. Việc sử dụng dấu $ để cố định phạm vi bảng BảngXepLoai giúp bạn dễ dàng sao chép công thức xuống các hàng khác.
VD2: Hàm VLOOKUP dò tìm tuyệt đối để lấy dữ liệu sản phẩm
Khi bạn có một danh sách các mã sản phẩm và muốn tra cứu thông tin chi tiết (như tên sản phẩm, đơn giá) từ một bảng dữ liệu lớn hơn. Đây là lúc range_lookup = FALSE phát huy tác dụng.
Bảng đơn hàng:
| Mã SP | Số lượng | Đơn giá |
|---|---|---|
| SP001 | 10 | =VLOOKUP(A2,DM_SP!$A$2:$C$100,3,FALSE) |
| SP003 | 5 | =VLOOKUP(A3,DM_SP!$A$2:$C$100,3,FALSE) |
Bảng danh mục sản phẩm (DM_SP):
| Mã SP | Tên Sản Phẩm | Đơn giá |
|---|---|---|
| SP001 | Bàn phím cơ | 1.500.000 |
| SP002 | Chuột không dây | 800.000 |
| SP003 | Màn hình 27 inch | 7.000.000 |
Ở đây, chúng ta muốn lấy Đơn giá (cột thứ 3 trong bảng DM_SP) dựa trên Mã SP. Hàm VLOOKUP với FALSE sẽ đảm bảo lấy đúng đơn giá cho từng mã sản phẩm.
VD3: Sử dụng VLOOKUP để trích xuất dữ liệu giữa hai sheet
Hàm VLOOKUP hoạt động hoàn hảo ngay cả khi dữ liệu nguồn và dữ liệu bạn cần điền nằm trên hai sheet khác nhau. Như đã thấy ở các ví dụ trên, bạn chỉ cần chỉ định tên sheet trước phạm vi bảng (ví dụ: BảngXepLoai!$A$2:$B$5).
VD4: Dùng hàm VLOOKUP trên 2 sheet Excel khác nhau
Tương tự như VD3, việc kết hợp VLOOKUP với nhiều sheet là một kỹ năng cơ bản nhưng vô cùng mạnh mẽ trong Excel. Điều quan trọng là đảm bảo tên sheet và phạm vi tham chiếu là chính xác.
Những điều cần lưu ý khi sử dụng hàm VLOOKUP
Mặc dù VLOOKUP rất mạnh mẽ, nhưng cũng có những lỗi phổ biến mà người dùng hay mắc phải. Hiểu rõ các vấn đề này sẽ giúp bạn tránh được sai sót:
1. Giá trị tra cứu nằm sai cột
VLOOKUP chỉ tìm kiếm giá trị trong cột đầu tiên (bên trái nhất) của table_array. Nếu lookup_value của bạn không nằm ở đó, hàm sẽ không thể tìm thấy kết quả.
2. Sai định dạng số hoặc văn bản
Excel có thể hiểu số được lưu dưới dạng văn bản là khác với số thuần túy. Đảm bảo rằng định dạng dữ liệu giữa lookup_value và cột đầu tiên của table_array là giống nhau. Ví dụ, nếu mã sản phẩm của bạn là