رفع خطای پنهان ویلوکاپ در اکسل ناشی از فاصله نامرئی یا عدد ذخیره شده به عنوان متن
این چالش VLOOKUP از نوع رایج کیبورد عربی/
علت؛ یک کاراکتر نامرئی که چشم نمی بیند
وقتی داده از یک نرم افزار کارگزینی، یک فایل PDF، یا یک سامانه دیگر در اکسل کپی و پیست می شود، گاهی یک فاصله (Space) اضافه در ابتدا یا انتهای متن همراه آن می آید؛ اکسل این فاصله را بخشی از متن سلول حساب می کند، اما روی صفحه، در حالت عادی، هیچ نشانه ای از آن دیده نمی شود. کد پرسنلی «۱۰۲۶» با یک فاصله اضافه در انتها، برای چشم دقیقا همان «۱۰۲۶» است؛ اما برای اکسل، دو رشته متنی کاملا متفاوت با طول متفاوتند.
نمونه واقعی از یک لیست کارانه
لیست زیر از کارگزینی دریافت شده؛ کد پرسنلی به صورت متن ذخیره شده و دو ردیف آن، بدون اینکه در ظاهر مشخص باشد، یک فاصله اضافه در انتهای کد دارند:

حالا همین کدها را با تایپ تمیز و بدون فاصله اضافه، در یک VLOOKUP با تطابق دقیق جستجو می کنیم:

دقیقا همین چالش برای اعداد ذخیره شده به عنوان متن هم پیش می آید؛ اگر کد پرسنلی یا کد خدمت در یک ستون به صورت عدد و در ستون دیگر (مثلا بعد از کپی از یک نرم افزار حسابداری) به صورت متن ذخیره شده باشد، VLOOKUP باز هم آن دو را یکی نمی داند، حتی اگر رقم های نمایش داده شده کاملا یکسان باشند.
تشخیص قطعی با LEN و CODE
به جای حدس زدن، طول واقعی متن را با =LEN(سلول) اندازه بگیرید. کد پرسنلی چهار رقمی باید دقیقا LEN برابر ۴ داشته باشد؛ اگر LEN عدد ۵ برگرداند، یعنی یک کاراکتر اضافه (معمولا فاصله) در متن پنهان است. برای تایید قطعی، تابع =CODE(RIGHT(سلول,1)) کد کاراکتر آخر را نشان می دهد؛ کد 32 همیشه یعنی فاصله (Space).

راه حل؛ ستون کمکی با TRIM
فرمول =TRIM(A2) تمام فاصله های اضافه در ابتدا و انتهای متن (و فاصله های دوتایی وسط متن) را حذف می کند. یک ستون کمکی کنار کد پرسنلی اصلی اضافه کنید، TRIM را روی آن اجرا کنید، و VLOOKUP یا INDEX/
اگر مشکل از عدد ذخیره شده به عنوان متن باشد (نه فاصله اضافه)، راه حل فرمول =VALUE(سلول) یا ضرب سلول در عدد ۱ (=A2*1) است؛ هر دو متن را به عدد واقعی تبدیل می کنند تا با ستون دیگر قابل تطبیق شود.
نکات کاربردی
- اگر VLOOKUP روی کدی که با چشم کاملا درست به نظر می رسد #N/
A داد، همیشه اول LEN آن را با تعداد رقم های واقعی مقایسه کنید. - فاصله نامرئی معمولا از کپی و پیست داده از یک نرم افزار دیگر، یک فایل PDF، یا حتی یک صفحه وب می آید؛ داده تایپ شده مستقیم در اکسل معمولا این مشکل را ندارد.
- به جای اصلاح دستی تک تک سلول ها، ستون کمکی TRIM یا CLEAN(TRIM(سلول)) را برای کل ستون یک بار اجرا کنید تا هم فاصله اضافه و هم کاراکترهای غیرچاپی حذف شوند.
- بعد از افزودن ستون کمکی، نتیجه VLOOKUP را حتما با یک کد که پاسخش را از قبل می دانید (مثل کد ۱۰۲۶ در نمونه بالا) تست کنید تا مطمئن شوید اصلاح واقعا جواب داده است.
📄 دانلود فایل اکسل نمونه «چالش مخفی VLOOKUP» — شامل لیست کارانه نمونه با کد پرسنلی دارای فاصله نامرئی، نتیجه VLOOKUP قبل از اصلاح، برگه تشخیص با LEN و CODE، و برگه نهایی با ستون کمکی TRIM و VLOOKUP اصلاح شده، برای تمرین گام به گام.
منبع : سایت حسابداری بیمارستان
کانال تلگرام @hospitalaccounting