Hàm VLOOKUP

Sử dụng hàm VLOOKUP, một trong những hàm tra cứu và tham chiếu, khi bạn cần tìm nội dung trong một bảng hay dải ô theo hàng. Ví dụ: tra cứu giá cho một linh kiện ô tô theo số linh kiện.

Ở dạng đơn giản nhất, hàm VLOOKUP cho biết:

=VLOOKUP(Giá trị bạn muốn tra cứu, dải ô mà bạn muốn tìm giá trị, số cột trong dải ô chứa giá trị trả về, Kết quả khớp Chính xác hoặc Kết quả khớp Tương đối – được biểu thị là 0/FALSE hoặc 1/TRUE).

Trình duyệt của bạn không hỗ trợ video. Hãy cài đặt Microsoft Silverlight, Adobe Flash Player hoặc Internet Explorer 9.

Video này là một phần trong khóa đào tạo có tên VLOOKUP: Thời điểm sử dụng và cách sử dụng.

Mẹo: Bí quyết để sử dụng hàm VLOOKUP là phải sắp xếp dữ liệu của bạn sao cho giá trị mà bạn muốn tra cứu (số linh kiện) nằm ở bên trái giá trị trả về mà bạn muốn tìm (giá của linh kiện).

Sử dụng hàm VLOOKUP để tra cứu giá trị trong bảng.

Cú pháp

VLOOKUP (lookup_value, table_array, col_index_num, [range_lookup])

Ví dụ:

  • =VLOOKUP(105,A2:C7,2,TRUE)

  • =VLOOKUP("Fontana",B2:E7,2,FALSE)

Tên đối số

Mô tả

lookup_value    (bắt buộc)

Giá trị bạn muốn tra cứu. Giá trị bạn muốn tra cứu phải nằm trong cột đầu tiên của phạm vi các ô do bạn chỉ định trong table-array .

Ví dụ, nếu table-array trải dài các ô B2:D7, thì lookup_value phải nằm ở cột B. Hãy xem đồ họa bên dưới. Lookup_value có thể là một giá trị hoặc tham chiếu đến một ô.

table_array    (bắt buộc)

Phạm vi các ô mà VLOOKUP sẽ tìm kiếm cho lookup_value và giá trị trả về.

Cột đầu tiên trong phạm vi ô phải chứa lookup_value (ví dụ như Họ trong ảnh bên dưới.) Phạm vi ô cũng phải chứa giá trị trả về (ví dụ, Tên trong đồ họa bên dưới) mà bạn muốn tìm.

Tìm hiểu cách chọn phạm vi trong một trang tính.

col_index_num    (bắt buộc)

Số cột (bắt đầu bằng 1 cho cột ngoài cùng bên trái của table-array) chứa giá trị trả về.

range_lookup   (tùy chọn)

Một giá trị lô-gic sẽ xác định xem bạn muốn hàm VLOOKUP tìm kết quả khớp tương đối hay kết quả khớp chính xác:

  • TRUE giả định rằng cột đầu tiên trong bảng được sắp xếp theo bảng chữ cái hoặc số, sau đó sẽ tìm kiếm giá trị gần nhất. Đây sẽ là cách thức mặc định nếu bạn không xác định cách thức nào khác.

  • FALSE tìm kiếm giá trị chính xác trong cột đầu tiên.

Cách bắt đầu

Có bốn phần thông tin mà bạn sẽ cần sử dụng để xây dựng cú pháp cho hàm VLOOKUP:

  1. Giá trị bạn muốn tra cứu, còn được gọi là giá trị tra cứu.

  2. Dải ô chứa giá trị tra cứu. Hãy nhớ rằng giá trị tra cứu phải luôn nằm ở cột đầu tiên của dải ô để hàm VLOOKUP có thể hoạt động chính xác. Ví dụ: Nếu giá trị tra cứu của bạn nằm ở ô C2 thì dải ô của bạn sẽ bắt đầu ở C.

  3. Số cột chứa giá trị trả về trong dải ô. Ví dụ: Nếu bạn chỉ định B2: D11 làm dải ô thì bạn nên tính B là cột đầu tiên, C là cột thứ hai và cứ tiếp tục như vậy.

  4. Hay bạn có thể chỉ định TRUE nếu bạn muốn có một kết quả khớp tương đối hoặc FALSE nếu bạn muốn có một kết quả khớp chính xác ở giá trị trả về. Nếu bạn không chỉ định bất cứ giá trị nào thì giá trị mặc định sẽ luôn là TRUE hay kết quả khớp tương đối.

Giờ thì hãy tập hợp tất cả mục trên lại với nhau, như sau:

=VLOOKUP(giá trị tra cứu, dải ô chứa giá trị tra cứu, số cột trong dải ô chứa giá trị trả về, chỉ định tùy chọn TRUE cho kết quả khớp tương đối hoặc FALSE cho kết quả khớp chính xác).

Ảnh sau cho bạn biết cách để thiết lập hàm VLOOKUP của mình nhằm trả về giá cả cho Đĩa phanh, là 85,73.

Ví dụ về hàm VLOOKUP
  1. D13 là lookup_value hay giá trị bạn muốn tra cứu.

  2. B2 tới E11 (được tô sáng bằng màu vàng trong bảng) là table_array hay dải ô chứa giá trị tra cứu.

  3. 3 là col_index_num hay số cột trong table_array chứa giá trị trả về. Ở ví dụ này, cột thứ ba trong mảng bảng là Giá Linh kiện, nên đầu ra công thức sẽ là một giá trị từ cột Giá Linh kiện.

  4. FALSE là range_lookup, do đó giá trị trả về sẽ là một kết quả chính xác.

  5. Đầu ra của công thức VLOOKUP là 85,73, giá của Đĩa phanh.

Ví dụ

Dưới đây là một số ví dụ khác cho hàm VLOOKUP:

Ví dụ 1

VLOOKUP Ví dụ 1

Ví dụ 2

VLOOKUP Ví dụ 2

Ví dụ 3

VLOOKUP Ví dụ 3

Ví dụ 4

VLOOKUP Ví dụ 4

Ví dụ 5

VLOOKUP Ví dụ 5

Sự cố

Đã xảy ra lỗi gì

Trả về giá trị sai

Nếu range_lookup là TRUE hoặc bỏ trống, cột đầu tiên cần được sắp xếp theo bảng chữ cái hoặc số. Nếu cột đầu tiên không được sắp xếp, giá trị trả về có thể là giá trị mà bạn không mong đợi. Hoặc sắp xếp cột đầu tiên hoặc là bạn sẽ dùng FALSE cho giá trị khớp chính xác.

Lỗi #N/A trong ô

  • Nếu range_lookup là TRUE, thì nếu giá trị trong lookup_value nhỏ hơn giá trị nhỏ nhất trong cột đầu tiên của table_array, bạn sẽ nhận giá trị lỗi #N/A.

  • Nếu range_lookup là FALSE, thì giá trị lỗi #N/A chỉ báo là không tìm thấy số chính xác.

Để biết thêm thông tin về cách giải quyết các lỗi #N/A trong hàm VLOOKUP, hãy xem mục Cách sửa lỗi #N/A trong hàm VLOOKUP.

Lỗi #REF! trong ô

Nếu col_index_num lớn hơn số cột trong table-array, bạn sẽ nhận giá trị lỗi #REF!

Để biết thêm thông tin về cách giải quyết các lỗi #REF! trong hàm VLOOKUP, hãy xem mục Cách sửa lỗi #REF!.

Lỗi #VALUE! trong ô

Nếu table_array nhỏ hơn 1, bạn sẽ nhận giá trị lỗi #VALUE!

Để biết thêm thông tin về cách giải quyết các lỗi #VALUE! trong hàm VLOOKUP, hãy xem mục Cách sửa lỗi #VALUE! trong hàm VLOOKUP.

#NAME? Trong ô

Giá trị lỗi #NAME? thường có nghĩa là công thức thiếu dấu ngoặc kép. Để tìm tên của một người, hãy bảo đảm bạn dùng dấu ngoặc kép xung quanh tên trong công thức. Ví dụ, hãy nhập tên là "Fontana" trong =VLOOKUP("Fontana",B2:E7,2,FALSE).

Để biết thêm thông tin, hãy xem mục Cách sửa lỗi #NAME!.

Làm thế này

Lý do

Dùng tham chiếu tuyệt đối cho range_lookup

Bằng cách dùng các tham chiếu tuyệt đối sẽ cho phép bạn điền từ trên xuống một công thức để nó luôn xem cùng phạm vi tra cứu chính xác.

Tìm hiểu cách dùng tham chiếu ô tuyệt đối.

Không lưu trữ giá trị số hoặc ngày dưới dạng văn bản.

Khi tìm kiếm các giá trị số hoặc ngày, hãy bảo đảm dữ liệu trong cột đầu tiên của table_array không được lưu trữ như là các giá trị văn bản. Trong trường hợp này, VLOOKUP có thể trả về một giá trị không đúng hoặc không được mong đợi.

Sắp xếp cột đầu tiên

Sắp xếp cột đầu tiên của table_array trước khi dùng VLOOKUP khi range_lookup là TRUE.

Dùng ký tự đại diện

Nếu range_lookup là FALSE và lookup_value là văn bản, bạn có thể sử dụng các ký tự đại diện — dấu chấm hỏi (?) và dấu sao (*) — trong lookup_value. Một dấu chấm hỏi khớp với bất kỳ ký tự đơn nào. Một dấu sao khớp với bất kỳ chuỗi ký tự nào. Nếu bạn muốn tìm một dấu chấm hỏi hay dấu sao thực sự, hãy gõ dấu ngã (~) trước ký tự.

Ví dụ, =VLOOKUP("Fontan?",B2:E7,2,FALSE) sẽ tìm mọi trường hợp có Fontana với chữ cái cuối cùng có thể thay đổi.

Hãy bảo đảm dữ liệu của bạn không chứa các ký tự không đúng.

Khi tìm kiếm giá trị văn bản trong cột đầu tiên, hãy đảm bảo dữ liệu trong cột đầu tiên không có khoảng trắng ở đầu, khoảng trắng ở cuối, sử dụng không thống nhất dấu ngoặc thẳng (' hoặc ") và cong (' hoặc "), hoặc ký tự không in ra. Trong những trường hợp này, VLOOKUP có thể trả về giá trị không mong muốn.

Để có được kết quả chính xác, hãy thử sử dụng hàm CLEAN hoặc hàm TRIM để loại bỏ khoảng trắng ở cuối các giá trị ô trong bảng.

Bạn có câu hỏi về một hàm cụ thể?

Đăng câu hỏi vào diễn đàn cộng đồng Excel

Giúp chúng tôi cải thiện Excel

Bạn có đề xuất về cách chúng tôi có thể cải thiện phiên bản Excel tiếp theo không? Nếu có, hãy xem qua các chủ đề tại User Voice của Excel.

Chủ đề Liên quan

Thẻ Tham chiếu Nhanh: Trình làm mới hàm VLOOKUP
Thẻ Tham chiếu Nhanh: Mẹo khắc phục sự cố cho hàm VLOOKUP
Mọi điều bạn cần biết về hàm VLOOKUP
Cách sửa lỗi #VALUE! trong hàm VLOOKUP
Cách sửa lỗi #N/A trong hàm VLOOKUP
Tổng quan về các công thức trong Excel
Cách tránh các công thức hỏng
Phát hiện lỗi trong công thức
Các hàm Excel (bảng chữ cái)
Các hàm Excel (theo danh mục)

Phát triển các kỹ năng của bạn
Khám phá nội dung đào tạo
Sở hữu tính năng mới đầu tiên
Tham gia Người dùng nội bộ Office

Thông tin này có hữu ích không?

Cảm ơn phản hồi của bạn!

Cảm ơn bạn đã phản hồi! Để trợ giúp tốt hơn, có lẽ chúng tôi sẽ kết nối bạn với một trong những nhân viên hỗ trợ Office của chúng tôi.

×