Chào mọi người,
Mình đang gặp một vấn đề khá khó chịu khi sử dụng hàm VLOOKUP trong Excel. Cụ thể là khi mình dò tìm một mã sản phẩm trong một bảng dữ liệu lớn, đôi khi hàm trả về kết quả #N/A, mặc dù mình chắc chắn là mã đó có tồn tại trong bảng dò tìm.
Sau khi kiểm tra kỹ, mình phát hiện ra nguyên nhân có thể là do:
- Khoảng trắng thừa: Ở cột chứa mã sản phẩm trong bảng dữ liệu chính hoặc bảng dò tìm có thể có những khoảng trắng thừa ở đầu hoặc cuối chuỗi. Điều này khiến Excel coi 2 mã giống hệt nhau về mặt ký tự nhưng lại khác nhau về độ dài.
- Định dạng số/văn bản: Đôi khi, một mã sản phẩm có thể được lưu dưới dạng số ở bảng này và dạng văn bản ở bảng kia, dẫn đến việc
VLOOKUPkhông nhận diện được sự khớp nhau. - Ký tự không hiển thị: Một số ký tự đặc biệt hoặc ký tự điều khiển có thể tồn tại trong dữ liệu mà mắt thường không thấy được.
Để khắc phục tình trạng này, mình đã thử áp dụng một số cách và thấy khá hiệu quả:
- Sử dụng hàm
TRIM: Áp dụng hàmTRIMcho cả cột dò tìm và cột dữ liệu để loại bỏ các khoảng trắng thừa. Ví dụ:=VLOOKUP(TRIM(A2), B:C, 2, FALSE). - Kiểm tra định dạng: Đảm bảo cột dò tìm và cột đầu tiên của bảng dò tìm có cùng định dạng (ví dụ: đều là văn bản hoặc đều là số). Có thể dùng chức năng 'Text to Columns' để chuyển đổi định dạng nếu cần.
- Kết hợp
IFERROR: Để báo cáo trông gọn gàng hơn, mình thường kết hợpVLOOKUPvớiIFERRORđể xử lý các lỗi#N/A. Ví dụ:=IFERROR(VLOOKUP(TRIM(A2), B:C, 2, FALSE), "Không tìm thấy").
Không biết có anh chị em nào trong diễn đàn đã từng gặp tình huống tương tự và có thêm kinh nghiệm hay mẹo nào khác để xử lý lỗi này không ạ? Chia sẻ để mọi người cùng học hỏi nhé!