XLOOKUP
XLOOKUP(giá_trị_tìm, mảng_dò, mảng_trả_về, [nếu_không_thấy], [kiểu_khớp], [chiều_dò])Bản thay thế VLOOKUP và HLOOKUP: dò trong một cột rồi lấy về giá trị cùng dòng ở cột khác — cột nào cũng được, kể cả nằm bên trái. Có sẵn chỗ điền chữ khi không tìm thấy nên không cần bọc IFNA.
Các đối số
| Đối số | Bắt buộc? | Ý nghĩa |
|---|---|---|
| giá_trị_tìm | Bắt buộc | Giá trị đem đi dò. |
| mảng_dò | Bắt buộc | Cột (hoặc dòng) chứa mã để dò. Chỉ một cột, không phải cả bảng như VLOOKUP. |
| mảng_trả_về | Bắt buộc | Cột chứa kết quả cần lấy. Phải cùng số dòng với mảng_dò — lệch là ra #VALUE!. Chọn nhiều cột thì trả về nhiều cột một lúc. |
| nếu_không_thấy | Tuỳ chọn | Chữ hoặc giá trị trả về khi không có kết quả. Bỏ trống thì vẫn ra #N/A. |
| kiểu_khớp | Tuỳ chọn | 0 = chính xác (mặc định) · -1 = không thấy thì lấy giá trị NHỎ HƠN gần nhất · 1 = lấy giá trị LỚN HƠN gần nhất · 2 = khớp theo ký tự đại diện * và ?. |
| chiều_dò | Tuỳ chọn | 1 = dò từ trên xuống (mặc định) · -1 = dò từ DƯỚI LÊN, dùng để lấy bản ghi mới nhất · 2 và -2 = dò nhị phân trên dữ liệu đã sắp. |
Ví dụ
=XLOOKUP(B2, BangGia!C:C, BangGia!A:A, "Không thấy")Lấy mã hàng khi chỉ biết tên — cột cần lấy nằm BÊN TRÁI cột dò
Kết quả: SP-104
=XLOOKUP(B2, LichSuGia[Mã], LichSuGia[Giá], , 0, -1)Dò TỪ DƯỚI LÊN để lấy lần thay đổi giá gần nhất của mã đó
Kết quả: 92.000
=XLOOKUP(D2, Bac[Từ], Bac[Tỷ lệ], 0, -1)Bậc chiết khấu: không trúng mốc thì lấy mốc nhỏ hơn gần nhất
Kết quả: 5%
Lưu ý khi dùng
- Mảng dò và mảng trả về phải cùng chiều cao. Trỏ một bên tới cả cột và bên kia tới một vùng hữu hạn là lỗi ngay.
- Dò gần đúng bằng -1 hoặc 1 KHÔNG đòi dữ liệu phải sắp xếp — khác hẳn VLOOKUP, đây là lý do nên dùng cho bảng bậc thang.
- Chỉ có ở Excel 365 và 2021 trở lên. File gửi cho máy dùng bản cũ thì công thức hiện thành _xlfn.XLOOKUP và trả về #NAME?.
Bẫy hay dính
Quen tay điền đối số thứ tư như VLOOKUP: ở VLOOKUP vị trí đó là kiểu dò, ở XLOOKUP là chữ hiện khi không tìm thấy. Gõ 0 vào đó thì không tìm thấy sẽ ra số 0 chứ không ra #N/A, và số 0 đó lẫn vào bảng tính như một con số thật.
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")