Để biết được một ô có dữ liệu là giá trị hay công thức thì ta chọn ô đó và xem ở đâu

Hàm VLOOKUP là một hàm đặc biệt hữu ích trong Excel giúp bạn dò và trả về dữ liệu tương ứng. Điện máy XANH sẽ hướng dẫn chi tiết bạn cách sử dụng hàm VLOOKUP trong bài viết sau nhé.

1Hàm VLOOKUP là gì?

Hàm VLOOKUP được sử dụng khi bạn cần dò tìm dữ liệu trong một bảng, một phạm vi theo hàng dọc và trả về dữ liệu tương ứng theo hàng ngang tương ứng.

Trong thực tế, hàm VLOOKUP cực kỳ thông dụng khi tìm tên sản phẩm, đơn giá, số lượng,.. dựa trên mã vạch, mã sản phẩm,... hoặc tìm tên nhân viên, xếp loại nhân viên dựa trên các tiêu chí trên.

Ngược lại, khi bạn cần dò tìm dữ liệu trong một bảng, một phạm vi theo hàng ngang và trả về dữ liệu tương ứng theo hàng dọc thì hãy sử dụng hàm HLOOKUP.

LOOKUP là Look Up nghĩa là tìm kiếm trong tiếng Anh. V là viết viết tắt của Vertical - hàng dọc và H là viết tắt của Horizontal - hàng ngang.

2Công thức hàm VLOOKUP

Nếu bạn copy công thức cho các ô dữ liệu khác, bạn cần sử dụng dấu $ để cố định Table_array đề giới hạn dò tìm bằng cách thêm trực tiếp trước khai báo (VD: $H$6:$J$13), cột hoặc sử dụng nút F4 sau khi chọn bảng.

Xem thêm: Hàm SUMIF

3Ví dụ hàm VLOOKUP

Ví dụ 1: Tính phụ cấp theo chức vụ

Do tình hình Covid-19, công ty quyết định phụ cấp cho nhân viên theo chức vụ tương ứng như bảng 2 (B16:C21). Lúc này, dựa vào danh sách nhân viên cùng với chức vụ có sẵn ở bảng 1, ta sẽ xác định mức phụ cấp tương ứng.

Để biết được một ô có dữ liệu là giá trị hay công thức thì ta chọn ô đó và xem ở đâu

Cách thực hiện là bạn sẽ dò tìm giá trị của chức vụ của nhân viên tại bảng 1, sau đó dò tìm tại cột 1 trong bảng 2 từ trên xuống dưới. Khi bạn tìm thấy giá trị, bạn sẽ lấy giá trị tương ứng tại cột 2 của bảng 2 để điền vào bảng 1.

Với một danh sách nhân viên vài trăm, một ngàn người thì bạn không thể làm thủ công như vậy. Đó chính là cách hàm VLOOKUP phát huy tác dụng.

Tại ô E4, bạn điền công thức: =VLOOKUP(D4,$B$16:$C$21,2,0)

  • Dấu $ được sử dụng để cố định các dòng, các cột của bảng 2 khi bạn copy công thức sang các ô khác.
  • 2 là số thứ tự của cột dữ liệu.
  • Range_lookup = 0 (FALSE) để dò tìm chính xác.

Để biết được một ô có dữ liệu là giá trị hay công thức thì ta chọn ô đó và xem ở đâu

Sau đó, bạn chỉ cần copy công thức cho các ô khác hoặc sử dụng Flash Fill và bạn đã hoàn thành việc tính phụ cấp theo chức vụ nhanh chóng.

Để biết được một ô có dữ liệu là giá trị hay công thức thì ta chọn ô đó và xem ở đâu

Ví dụ 2: Xếp loại học sinh theo điểm số

Sau kỳ kiểm tra, ta có kết quả bài thi tương ứng với học sinh như bảng 1. Ta cần xếp loại theo điểm số dựa trên bảng 2 (B11:C15).

Để biết được một ô có dữ liệu là giá trị hay công thức thì ta chọn ô đó và xem ở đâu

Tại ô E4, bạn điền công thức: =VLOOKUP(D4,$B$11:$C$15,2,1)

  • Dấu $ được sử dụng để cố định các dòng, các cột của bảng 2 khi bạn copy công thức sang các ô khác.
  • 2 là số thứ tự của cột dữ liệu.
  • Range_lookup = 1 (TRUE) để dò tìm điểm số có giá trị gần nhất.

Excel sẽ lấy điểm số ở cột D4 và dò trong bảng 2. Khi thấy giá trị gần nhất của D4 trong bảng (ở đây là 8.5), Excel sẽ trả về kết quả tương ứng ở cột 2 là Giỏi.

Để biết được một ô có dữ liệu là giá trị hay công thức thì ta chọn ô đó và xem ở đâu

Sau đó, bạn chỉ cần copy công thức cho các ô khác hoặc sử dụng Flash Fill và bạn đã hoàn thành việc xếp loại học sinh theo điểm số nhanh chóng.

Để biết được một ô có dữ liệu là giá trị hay công thức thì ta chọn ô đó và xem ở đâu

4Các lỗi thường gặp khi dùng hàm VLOOKUP

Một ràng buộc của hàm VLOOKUP là nó chỉ có thể tìm các giá trị trên cột ngoài cùng bên trái trong Table_array, nếu không sẽ xuất hiện lỗi #N/A. Lúc này bạn hãy cân nhắc sử dụng hàm INDEX kết hợp hàm MATCH.

Như ví dụ bên dưới, Table_array là A2:C10, nên hàm VLOOKUP sẽ tìm kiếm trong cột A. Để sửa trường hợp này, bạn đổi Table_array thành B2:C10, hàm VLOOKUP sẽ tìm kiếm trong cột B.

Để biết được một ô có dữ liệu là giá trị hay công thức thì ta chọn ô đó và xem ở đâu

Ngoài ra, nếu không tìm thấy kết quả khớp chính xác sẽ trả về hàm sẽ trả về lỗi #N/A do dữ liệu không có trong Table_array. Lúc này bạn có thể sử dụng hàm IFERROR để đổi #N/A thành giá trị khác.

Như ví dụ bên dưới, "Rau muống" không có trong bảng dò tìm nên hàm VLOOKUP sẽ không tìm thấy.

Để biết được một ô có dữ liệu là giá trị hay công thức thì ta chọn ô đó và xem ở đâu

Nếu bạn chắc chắn rằng dữ liệu có trong Table_array của mình và hàm VLOOKUP không tìm được được, hãy kiểm tra lại rằng các ô dữ liệu được tham chiếu không có khoảng trắng ẩn hoặc ký tự không in. Ngoài ra, hãy đảm bảo rằng các ô dữ liệu tuân theo đúng định dạng.

Nếu Col_index_num lớn hơn số cột trong Table_array, bạn sẽ nhận được giá trị lỗi #REF!. Lúc này, bạn hãy kiểm tra lại công thức để đảm bảo Col_index_num bằng hoặc nhỏ hơn số cột trong Table_array.

Như ví dụ bên dưới, Col_index_num là 3, trong khi Table_array là B2:C10 chỉ có 2 cột.

Để biết được một ô có dữ liệu là giá trị hay công thức thì ta chọn ô đó và xem ở đâu

Nếu Col_index_num nhỏ hơn 1 trong công thức, bạn sẽ nhận giá trị lỗi #VALUE!.

Trong Table_array, cột 1 là cột tìm kiếm, cột 2 là cột đầu tiên ở bên phải của cột tìm kiếm, v.v... Vì vậy khi xuất hiện lỗi này, hãy kiểm tra lại giá trị Col_index_number trong công thức.

Như ví dụ bên dưới, Col_index_num bằng 0 dẫn đến việc xuất hiện lỗi #VALUE!.

Để biết được một ô có dữ liệu là giá trị hay công thức thì ta chọn ô đó và xem ở đâu

Lỗi #NAME? xuất hiện khi Lookup_value thiếu dấu ngoặc kép ("). Để tìm kiếm giá trị định dạng văn bản (Text), bạn dùng dấu ngoặc kép để Excel có thể hiểu công thức.

Như ví dụ bên dưới, Cải xoăn không bỏ vào dấu ngoặc kép (") sẽ làm xuất hiện lỗi #NAME?. Bạn sửa lỗi bằng cách thay Cải xoăn thành "Cải xoăn".

Để biết được một ô có dữ liệu là giá trị hay công thức thì ta chọn ô đó và xem ở đâu

5Một số lưu ý khi dùng hàm VLOOKUP

Trong quá trình copy công thức, hãy biến Table_array hoặc Lookup_value thành tham chiếu tuyệt đối bằng cách đặt dấu đô la ($) trước các cột và hàng để công thức không bị thay đổi.

Như ví dụ dưới, ta có công thức tại ô C13 là =VLOOKUP(B13,$B$2:$C$10,2,0). Khi copy công thức cho ô C4 Table_array sẽ giữ nguyên.

Để biết được một ô có dữ liệu là giá trị hay công thức thì ta chọn ô đó và xem ở đâu

Nếu không chuyển đổi thành tham chiếu tuyệt đối, Lookup_value hoặc Table_array sẽ bị thay đổi, làm kết quả tìm kiếm bị sai lệch.

Như ví dụ dưới, ta có công thức tại ô C13 là =VLOOKUP(B13,B2:C10,2,0). Khi copy công thức cho ô C4 Table_array sẽ biến thành =VLOOKUP(B14,B3:C11,2,0).

Để biết được một ô có dữ liệu là giá trị hay công thức thì ta chọn ô đó và xem ở đâu

Nếu trong Table_array, dữ liệu số đang để dưới dạng văn bản và Lookup_value lại là dạng số thì hàm VLOOKUP sẽ trả về lỗi #N/A.

Như ví dụ dưới, ta có dữ liệu tại ô A2:A5 đang ở dạng văn bản nhưng Lookup_value tại ô A8 đang ở dạng số.

Để biết được một ô có dữ liệu là giá trị hay công thức thì ta chọn ô đó và xem ở đâu

Trong trường hợp này, hãy chuyển định dạng ô A2:A5 thành dạng số và hàm sẽ trả về kết quả bình thường.

Để biết được một ô có dữ liệu là giá trị hay công thức thì ta chọn ô đó và xem ở đâu

Nếu bảng biểu của bạn chứa nhiều giá trị trùng nhau, hàm VLOOKUP sẽ trả về kết quả đầu tiên mà nó tìm thấy từ trên xuống dưới.

Như ở ví dụ dưới, trong bảng ta có 2 giá trị ứng với Táo là 97 và 23. Hàm VLOOKUP sẽ trả về kết quả 97 vì đó là giá trị đầu tiên nó tìm thấy

Để biết được một ô có dữ liệu là giá trị hay công thức thì ta chọn ô đó và xem ở đâu

Giải pháp 1: Nếu bạn muốn loại bỏ giá trị trùng lặp, bạn bôi đen bảng dò tìm và chọn Data > Remove Duplicates

Để biết được một ô có dữ liệu là giá trị hay công thức thì ta chọn ô đó và xem ở đâu

Giải pháp 2: Sử dụng Pivot Table để lọc ra danh sách kết quả

Để biết được một ô có dữ liệu là giá trị hay công thức thì ta chọn ô đó và xem ở đâu

Mời bạn tham khảo một số mẫu laptop đang kinh doanh tại Điện máy XANH

Trên đây là bài viết chia sẻ cho bạn cách dùng hàm VLOOKUP trong Excel. Mong rằng những thông tin này đã giúp ích cho bạn trong việc hiểu và sử dụng hàm VLOOKUP cho công việc của mình.