VLOOKUP báo #N/A dù hai bên nhìn y hệt nhau
Đầu bài
Dò mã khách từ bảng này sang bảng kia, mắt nhìn hai ô giống hệt nhau nhưng công thức vẫn trả về #N/A. Đây là câu hỏi số một của học viên mới.
Các bước làm
- 1
Xem ô nghiêng về bên nào
Số căn phải, chữ căn trái. Cột mã một bên căn trái một bên căn phải nghĩa là một bên đang là CHỮ, một bên là SỐ — Excel coi 1001 và "1001" là hai thứ khác nhau.
- 2
Đo độ dài thật của ô
Gõ =LEN(ô) cho cả hai bên. Lệch nhau 1–2 ký tự là do dấu cách thừa hoặc ký tự ẩn dán từ web/phần mềm kế toán.
- 3
Làm sạch trước khi dò
Bọc =TRIM(CLEAN(ô)) để bỏ cách thừa và ký tự điều khiển. Nếu lệch kiểu dữ liệu thì ép về cùng kiểu: =VALUE(ô) hoặc =ô&"".
- 4
Ép cả cột về một kiểu
Data → Text to Columns → bấm Finish luôn. Mẹo này ép cả cột chữ-trông-giống-số thành số thật, nhanh hơn sửa từng ô.
- 5
Đổi sang XLOOKUP nếu có Excel 365
=XLOOKUP(mã, cột_mã, cột_kết_quả, "Không thấy") — dò được sang trái, không phụ thuộc số thứ tự cột, và tự xử lý phần không tìm thấy.
- 6
Bọc lỗi khi giao file cho người khác
=IFNA(công_thức, "Chưa có") — chỉ bắt riêng #N/A, để lỗi khác vẫn lộ ra mà sửa.
Phím dùng trong bài
Bẫy hay dính
Đừng vội bọc IFERROR ngay từ đầu — nó giấu luôn cả lỗi sai vùng dò và sai số cột, dữ liệu ra sai mà không ai biết.
Cùng nhóm dò tìm, đối chiếu & bắt lệch
- Đối chiếu hai danh sách: bên nào thiếu, bên nào lệch tiềnSao kê ngân hàng một bên, sổ kế toán một bên. Cần biết chứng từ nào chỉ có ở một bên, và chứng từ nào có cả hai bên nhưng lệch số tiền.
- Dò theo hai điều kiện trở lên không cần cột phụCần lấy giá theo cả mã hàng VÀ khu vực, hoặc doanh số theo nhân viên VÀ tháng. VLOOKUP thường chỉ dò được một khóa.
- Đếm giá trị không trùng và truy ra bản ghi trùngCần biết có bao nhiêu khách hàng KHÁC NHAU (không phải bao nhiêu dòng), và chỉ ra chứng từ nào bị nhập trùng theo nhiều khóa cùng lúc.
- Dò đơn giá theo NGÀY HIỆU LỰC khi bảng giá đổi mấy lần trong nămCùng một mã hàng có nhiều dòng trong bảng giá, mỗi dòng một ngày áp dụng. Hoá đơn ngày nào phải ăn đúng giá có hiệu lực tại ngày đó — VLOOKUP thường chỉ lấy dòng nó gặp trước.