Hàm VLOOKUP trong

Excel là hàm tìm kiếm giá trị và trả kết quả theo hàng dọc (Vertical Lookup) thường thấy trong các giáo trình Excel, ứng dụng trong việc thống kê, tra cứu và xếp loại thông tin cá nhân của một danh sách dữ liệu.


Cụ thể hơn, hàm VLOOKUP truy tìm một dòng (row) chứa giá trị cần tìm ở cột đầu tiên (bên trái) của một bảng dữ liệu, sau đó trả kết quả là giá trị cùng dòng trong cột mà bạn đã chỉ định trước. Người học Excel 2010 có thể ứng dụng hàm VLOOKUP để xếp loại học lực của một danh sách lớp dựa trên điểm số, tra cứu tên hàng hóa dựa trên mã sản phẩm, tìm kiếm và phân loại thông tin nhân viên dựa trên mã số nhân viên…



Cấu trúc cú pháp của hàm VLOOKUP như sau:

=VLOOKUP(lookup_value,table_array,col_index_num,ra nge_lookup)

Trong đó:

lookup_value: Giá trị tra cứu, dùng để đối chiếu và tìm kiếm trong cột đầu tiên của bảng dữ liệu (table_array)

table_array: Bảng dữ liệu gốc để Excel dùng làm căn cứ dò tìm và tra xuất kết quả. Vì bảng này thường cố định nên khi chọn vùng dữ liệu, phải sử dụng tham chiếu tuyệt đối (thêm dấu $ phía trước địa chỉ hoặc nhấn phím F4, ví dụ: $F$6:$G$11)

col_index_num: Thứ tự của cột chỉ định để lấy kết quả trên bảng dữ liệu, tính từ trái qua phải (cột đầu tiên là cột số 1)

range_lookup: Kiểu tìm kiếm tương đối (TRUE, 1 hoặc bỏ trống) hoặc dò tìm tuyệt đối (FALSE, 0). Ví dụ và cách giải thích bên dưới sẽ giúp bạn hiểu hơn về 2 kiểu dò tìm này của VLOOKUP.

1. Kiểu dò tìm tương đối:
  • Trước khi sử dụng hàm VLOOKUP, cần lưu ý sắp xếp các giá trị của cột đầu tiên trong bảng dữ liệu theo thứ tự từ nhỏ đến lớn. Hàm VLOOKUP sẽ tìm giá trị lớn nhất trong cột đầu tiên của bảng dữ liệu thỏa điều kiện nhỏ hơn hoặc bằng giá trị tra cứu (lookup_value).
  • Trong bảng dữ liệu gốc, tại hàng (row) có giá trị vừa tìm thấy, VLOOKUP sẽ xuất kết quả tương ứng trong cột chỉ định (cột thứ col_index_num).
  • Nếu giá trị tra cứu nhỏ hơn tất cả các giá trị trong cột đầu tiên của bảng dữ liệu, hàm sẽ báo lỗi #N/A.
Ví dụ: căn cứ vào quy tắc xếp loại, giáo viên cần đánh giá học lực của các học sinh dựa trên điểm trung bình, lúc này ta sẽ xác định các giá trị trong hàm VLOOKUP tại ô D6 như sau:



  • lookup_value: C6. Để phân loại học lực, ta cần dựa trên điểm trung bình của học sinh để so với bảng quy tắc xếp loại. Vậy điểm trung bình chính là giá trị tra cứu.
  • table_array: $F$7:$G$12. Cần lưu ý sắp xếp quy tắc phân loại học lực theo giá trị từ nhỏ đến lớn. Vùng giá trị cần định dạng tuyệt đối để tiện sao chép kết quả cho các học sinh còn lại.
  • col_index_num: 2. Trong bảng quy định xếp loại học lực, cột đầu tiên là điểm, cột thứ 2 là học lực và cũng là cột chỉ định chứa kết quả cần xuất cho ô D6.
  • range_lookup: 1 / TRUE / (bỏ trống). Áp dụng kiểu tìm kiếm tương đối vì điểm trung bình của các học sinh rất đa dạng.
  • Công thức D6: =VLOOKUP(C6,$F$7:$G$12,2) hoặc =VLOOKUP(C6,$F$7:$G$12,2,1) hay =VLOOKUP(C6,$F$7:$G$12,2,TRUE)
2. Kiểu dò tìm tuyệt đối:
  • Hàm VLOOKUP chỉ tìm chính xác giá trị tra cứu trong cột đầu tiên trong bảng dữ liệu. Nếu không tìm được giá trị tra cứu trong bảng dữ liệu, kết quả sẽ trả về: #N/A.
  • Tại hàng (row) có giá trị vừa tìm thấy trên bảng dữ liệu, VLOOKUP sẽ xuất kết quả tương ứng trong cột chứa dữ liệu kết quả (cột thứ col_index_num).
Ví dụ: tra cứu thông tin sản phẩm dựa trên mã sản phẩm, lúc này ta sẽ xác định các giá trị trong hàm VLOOKUP tại ô F6 như sau:



  • lookup_value: B6. Mã sản phẩm chính là giá trị tra cứu.
  • table_array: $H$6:$J$11.
  • col_index_num: 3. Trong bảng tra cứu, cột thứ 3 là loại sản phẩm, chính là cột chỉ định chứa kết quả cần xuất cho ô F6.
  • range_lookup: 0 / FALSE. Vì mã sản phẩm phải trùng khớp hoàn toàn nên ta dùng kiểu dò tìm tuyệt đối.
  • Cú pháp F6: =VLOOKUP(B6,$H$6:$J$11,3,0) hoặc =VLOOKUP(C6,$F$7:$G$12,2,FALSE)
  • Trường hợp ô F10 trả kết quả #N/A là do bảng dữ liệu không có mã sản phẩm B4.
Nguồn: Sưu tầm