Hàm Vlookup Từ A Đến Z, Từ 0 Tới 1 Kèm Ví Dụ Download

Hàm VLOOKUP trong Excel - cú pháp và cách sử dụng cơ bản

Hàm VLOOKUP là gì? Đầu tiên, hàm VLOOKUP là một hàm tìm kiếm trong Microsoft Excel. Hàm VLOOKUP sẽ tìm kiếm giá trị bạn đưa vào và trả về giá trị cùng dòng ở một cột khác trong bảng.

Hàm VLOOKUP có mặt trong các phiên bản Excel 365, Excel 2025, Excel 2025, Excel 2013, Excel 2007 và các phiên bản cũ hơn.

Cú pháp của hàm VLOOKUP

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

Trong ví dụ trên, chúng ta cần phải tìm đơn giá của sản phẩm có mã sản phẩm là công thức VLOOKUP được sử dụng trong ô là

=VLOOKUP("SP004",A2:C7,3,FALSE)

  • lookup_valuelà giá trị dùng để tìm kiếm. Giá trị này có thể thuộc kiểu dữ liệu số, ngày tháng hoặc kiểu chuỗi, kiểu tham chiếu hoặc một giá trị được tính toán ra bởi một hàm khác. Trong công thức trên, chuỗi "SP004" là
  • table_arrayvùng dữ liệu gồm ít nhất 2 cột. Hàm VLOOKUP luôn tìm kiếm giá trị dùng để tìm kiếm - trong Trong công thức trên, vùng là bao gồm 3 cột, hàm VLOOKUP sẽ tìm kiếm chuỗi "SP004" trong cột đầu tiên là cột A.
  • col_index_numlà thứ tự cột chứa giá trị trả về trong bảng . Trong ví dụ trên, là A2:C7, cột C là cột thứ 3 trong bảng này.
  • [range_lookup] tham số không bắt buộc, nhận giá trị TRUE hoặc 1 (tìm kiếm gần đúng) hoặc FALSE hoặc 0 (tìm kiếm chính xác)
    • tham số khi nhận giá trị FALSE sẽ thực hiện tìm kiếm chính xác cho Trong ví dụ của chúng ta, VLOOKUP sẽ tìm kiếm chính xác chuỗi "SP004" trong cột A, trong trường hợp không tìm thấy, hàm VLOOKUP sẽ trả về lỗi #N/A
    • TRUE tham số khi nhận giá trị TRUE sẽ thực hiện tìm kiếm gần đúng, tìm giá trị lớn nhất trong bảng dữ liệu nhưng nhỏ hơn Điều kiện để sử dụng tìm kiếm gần đúng của hàm VLOOKUP là cột tìm kiếm cần được sắp xếp theo thứ tự tăng dần

Trong ví dụ trên, nếu chúng ta viết chuỗi cần tìm kiếm là "SP004" vào trong công thức VLOOKUP, thì mỗi lần cần tìm kiếm giá trị mới sẽ rất mất công sửa lại công thức, vậy nên, chúng ta có thể viết lại công thức như sau:

=VLOOKUP(F1,A2:C7,3,FALSE)

Vậy là mỗi khi chúng ta cần thay đổi mã sản phẩm, bạn chỉ cần thay đổi trong ô F1, hoặc nếu bạn đã thiết lập Data Validation cho ô F1, thì bạn chỉ việc chọn ở danh sách Data Validation này.

Làm thế nào để sử dụng hàm VLOOKUP trong thực tế

Trong ví dụ này, chúng ta cần phải hoàn thiện việc tra cứu Số lượng và Đơn giá ở cột F và cột G, nếu chúng ta không khoá tham chiếu tới bảng tra cứu thì khi kéo công thức từ F2 xuống cho F3 và F4 vùng tham chiếu này sẽ bị lệch và dẫn tới kết quả của hàm VLOOKUP không chính xác.

5 chú ý khi sử dụng hàm VLOOKUP

  1. Hàm VLOOKUP không thể trả về kết quả khi cột lấy kết quả nằm về phía bên trái của cột chứa dữ liệu cần tra cứu. Phương án xử lý: sử dụng kết hợp hàm Index và Match
  2. Hàm VLOOKUP tra cứu không phân biệt chữ hoa / chữ thường.
  3. Chú ý tham số cuối cùng để chọn đúng TRUE hay FALSE trong trường hợp tra cứu gần đúng hoặc tra cứu chính xác.
  4. Khi tra cứu gần đúng, chú ý dữ liệu trong cột tra cứu cần được sắp xếp theo thứ tự tăng dần
  5. Khi giá trị cần tra cứu không được tìm thấy, VLOOKUP sẽ trả về lỗi #NA.

Sử dụng hàm VLOOKUP tra cứu ở 1 sheet khác

Sử dụng hàm VLOOKUP tra cứu ở 1 file Excel khác

=VLOOKUP(A2,'[wb khác.xlsx]Ví dụ 02'!$A$2:$C$7,2,FALSE)

Trong trường hợp đóng, thì công thức VLOOKUP của chúng ta vẫn sẽ hoạt động, nhưng Excel sẽ tự động "viết lại" công thức VLOOKUP với đường dẫn tới file dữ liệu như sau:

=VLOOKUP(A2,'C:UsersthanhnguyenDesktop[wb khác.xlsx]Ví dụ 02'!$A$2:$C$7,2,FALSE)

Sử dụng hàm VLOOKUP và ký tự đại diện *

Giống như nhiều hàm Excel khác, hỗ trợ bạn sử dụng ký tự thay thế như

  • Dấu * để thay thế cho bất kì số lượng ký tự nào trong tham số
  • Dấu ? để thay thế cho 1 và chỉ 1 ký tự trong tham số

Ví dụ tìm kiếm mã sản phẩm bắt đầu hoặc kết thúc bởi một chuỗi

=VLOOKUP("*AX",A2:B7,2,FALSE)

Trong ví dụ này, dấu * thay thế cho cả đoạn "SP001-ABC-" trong dữ liệu của chúng ta.

Nếu bạn muốn tra cứu chuỗi có chứa chữ "GFC" ở khoảng giữa, thì công thức VLOOKUP chúng ta có thể viết công thức VLOOKUP như sau:

=VLOOKUP("*GFC*",A2:B7,2,FALSE)

Để công thức của chúng ta linh hoạt hơn, bạn có thể tách phần "GFC" ra 1 ô riêng - ô G1 chẳng hạn, thì công thức VLOOKUP của chúng ta sẽ như sau:

=VLOOKUP("*" & G1 & "*",A2:B7,2,FALSE) =VLOOKUP("ZZ*",A2:B7,2,FALSE)

Trong ví dụ này, chúng ta sử dụng "ZZ*" để tra cứu và tìm kiếm ô dữ liệu bắt đầu bằng "ZZ"

Tra cứu gần đúng với VLOOKUP trong Excel

Bây giờ sẽ là lúc chúng ta nhìn kỹ hơn vào tham số thứ 4 trong hàm VLOOKUP

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

nhận giá trị TRUE hoặc FALSE.

  • FALSE cho trường hợp tra cứu chính xác mà chúng ta đã có nhiều trường hợp ví dụ trong bài viết này, nếu bạn ngại viết FALSE hơi dài thì ta có thể thay bằng số 0 với tác dụng tương tự.
  • TRUE cho trường hợp tra cứu gần đúng, thay vì gõ TRUE, chúng ta có thể gõ số 1.

Ví dụ tra cứu gần đúng với VLOOKUP như sau, bạn làm quản lý và đưa ra KPI cho các nhân viên bán hàng, tới cuối tháng, bạn sẽ cần tính hoa hồng dựa trên từng bậc doanh thu cho các bạn Sales này, rõ ràng việc sử dụng tra cứu chính xác với VLOOKUP sẽ không giải quyết được vấn đề, còn cách giải quyết bằng cách viết rất nhiều hàm IF lồng nhau sẽ giải quyết được vấn đề này nhưng không phải là sự tối ưu, đó chính là lý do bạn đang đọc bài viết này tới tận bây gi 901;. Chúng ta sẽ làm như sau:

F2=VLOOKUP(E2,$A$2:$B$7,2,TRUE)

khi chúng ta sử dụng VLOOKUP ở dạng này là: (Cột A trong trường hợp này) theo . Bởi vì, VLOOKUP sẽ trả về giá trị gần nhất và nhỏ hơn Như vậy kết quả #N/A chúng ta đang gặp phải trong ví dụ này là hoàn toàn đúng với cách hoạt động của VLOOKUP, bởi vì trong cột A - Doanh thu không có giá trị nào nhỏ hơn 96 cả. Để xử lý lỗi #N/A trong trường hợp này, bạn có thể kết hợp thêm hàm IFNA hoặc IFERROR như sau:

F2=IFNA(VLOOKUP(E2,$A$2:$B$7,2,TRUE),"Không có hoa hồng") F2=IFERROR(VLOOKUP(E2,$A$2:$B$7,2,TRUE),"Không có hoa hồng") Download file ví dụ (33KB)

Cảm ơn các bạn đã đọc tới đây. Chúc thành công.

ĐT Nguyễn.

P.S: Những kiến thức trong bài này sẽ là nền tảng cơ bản để bạn có thể đọc tiếp bài viết sau đây:

Next Post Previous Post