Chào mọi người,
Hôm nay mình muốn chia sẻ một kinh nghiệm nhỏ khi làm việc với hàm VLOOKUP, đặc biệt là khi gặp lỗi #N/A mà mình đã mất khá nhiều thời gian để tìm ra nguyên nhân.
Tình huống của mình là khi sử dụng VLOOKUP để tra cứu một mã sản phẩm từ một bảng dữ liệu khác. Mọi thứ có vẻ đúng cú pháp, nhưng kết quả trả về toàn là #N/A. Sau khi kiểm tra đi kiểm tra lại, mình phát hiện ra vấn đề không nằm ở công thức hay phạm vi tra cứu, mà là do kiểu dữ liệu của cột tra cứu trong bảng nguồn và cột tìm kiếm trong bảng đích không khớp nhau.
Cụ thể, cột mã sản phẩm trong bảng nguồn của mình là số nguyên (Number), nhưng cột mã sản phẩm mình dùng để tìm kiếm lại là văn bản (Text) do nhập liệu có thêm dấu nháy đơn ở đầu hoặc do định dạng mặc định của Excel khi nhập liệu.
Cách khắc phục:
- Cách 1 (Ưu tiên): Chỉnh sửa trực tiếp dữ liệu nguồn. Chọn cột chứa mã sản phẩm trong bảng nguồn, vào tab Data -> Text to Columns. Chọn Delimited, bỏ qua bước phân tách, rồi chọn General ở bước cuối cùng. Thao tác này sẽ ép Excel nhận diện lại kiểu dữ liệu. Hoặc đơn giản hơn, chọn cột đó, vào mục định dạng số (Number Format) và chọn Number.
- Cách 2: Chuyển đổi dữ liệu tra cứu trong công thức. Nếu không thể sửa dữ liệu nguồn, bạn có thể ép kiểu dữ liệu cần tra cứu về đúng định dạng. Ví dụ, nếu cột mã sản phẩm là số, và bạn muốn tra cứu một giá trị văn bản, hãy thử sửa công thức
VLOOKUPnhư sau:=VLOOKUP(VALUE(A2), B:C, 2, FALSE)(nếu A2 là ô chứa mã cần tra cứu và mã nguồn là số). Hoặc nếu mã nguồn là văn bản và bạn tra cứu số:=VLOOKUP(TEXT(A2,