EzTech

VLOOKUP

Tra cứu & tham chiếuPhổ biếnMọi phiên bản
VLOOKUP(giá_trị_tìm, bảng, số_thứ_tự_cột, [kiểu_dò])

Dò một giá trị ở cột ĐẦU TIÊN của bảng rồi lấy về giá trị nằm cùng dòng, ở cột thứ mấy do mình chỉ định. Đây là hàm điền đơn giá, tên hàng, thông tin khách từ một bảng danh mục sang bảng làm việc.

Các đối số

Đối sốBắt buộc?Ý nghĩa
giá_trị_tìmBắt buộcGiá trị đem đi dò, thường là ô mã hàng hoặc mã khách ở bảng đang làm.
bảngBắt buộcVùng chứa dữ liệu. Cột ĐẦU TIÊN của vùng này bắt buộc phải là cột chứa mã — không phải cột đầu của sheet. Kéo công thức xuống thì khoá vùng bằng F4.
số_thứ_tự_cộtBắt buộcĐếm từ cột đầu của VÙNG, không phải chữ cái cột trên sheet. Vùng A:D mà cần cột C thì số này là 3.
kiểu_dòTuỳ chọn0 hoặc FALSE = dò CHÍNH XÁC, gần như luôn dùng cái này. 1, TRUE hoặc bỏ trống = dò GẦN ĐÚNG, chỉ dùng cho bảng bậc thang và bảng phải sắp tăng dần.

Trả về gì

Giá trị ở ô giao nhau giữa dòng tìm thấy và cột đã chỉ định. Không tìm thấy thì trả về lỗi #N/A.

Ví dụ

  • =VLOOKUP(B2, BangGia!$A$2:$C$500, 3, 0)

    Lấy đơn giá ở cột thứ 3 của bảng giá theo mã hàng ở B2

    Kết quả: 850.000

  • =IFNA(VLOOKUP(B2, BangGia!$A$2:$C$500, 3, 0), "Chưa có giá")

    Bọc IFNA để mã chưa có trong bảng giá không hiện lỗi ra bảng in

    Kết quả: Chưa có giá

  • =VLOOKUP(D2, BacChietKhau!$A$2:$B$6, 2, 1)

    Dò GẦN ĐÚNG bậc chiết khấu theo số lượng — bảng bậc phải sắp tăng dần

    Kết quả: 5%

Lưu ý khi dùng

  • Chỉ dò được sang PHẢI. Cột mã nằm bên phải cột cần lấy thì phải đổi sang XLOOKUP hoặc INDEX + MATCH.
  • Hai bên phải cùng KIỂU dữ liệu: mã một bên là số, một bên là chữ thì mắt nhìn giống nhau mà vẫn ra #N/A. Nhìn ô căn trái hay căn phải là biết.
  • Dấu cách thừa hay ký tự ẩn dán từ web cũng làm dò trượt — bọc TRIM(CLEAN(...)) cho cả hai bên trước khi dò.
  • Dò gần đúng trên bảng CHƯA SẮP TĂNG DẦN vẫn trả về kết quả, chỉ là kết quả sai và không có lỗi nào báo.

Bẫy hay dính

Chèn thêm một cột vào giữa bảng danh mục là số_thứ_tự_cột trỏ sang cột khác, công thức vẫn chạy và ra số sai mà không báo gì. Đây là lý do lớn nhất để chuyển sang XLOOKUP hoặc INDEX + MATCH khi bảng còn sửa nhiều.

Chọn cái nào

  • VLOOKUP hay XLOOKUP

    Có Excel 365 thì dùng XLOOKUP: dò được sang trái, không vỡ khi chèn thêm cột, có sẵn chỗ điền "nếu không thấy". VLOOKUP chỉ nên giữ khi file phải mở được trên bản Excel cũ. Hay gặp: cột mã nằm BÊN PHẢI cột cần lấy — VLOOKUP chịu.

    =XLOOKUP(B2, C:C, A:A, "Không thấy")
  • VLOOKUP hay INDEX + MATCH

    INDEX+MATCH nhanh hơn trên bảng rất lớn và không phụ thuộc số thứ tự cột, nên chèn cột vào giữa bảng dò cũng không sai. VLOOKUP dễ đọc hơn cho người mới. Bảng 200.000 dòng mà kéo VLOOKUP là máy ì thấy rõ.

    =INDEX($C:$C, MATCH(B2, $A:$A, 0))

Hàm liên quan

Chat ZaloGọi điệnMessengerTìm đường