سبد خرید
0

محصولی در سبد خرید نیست.

بازگشت به فروشگاه

چرا تابع Vlookup درست کار نمیکنه؟

مشکل تابع Vlookup
۴.۱/۵ - (۱۲ امتیاز)

چرا تابع Vlookup درست کار نمیکنه؟

این سوالیه که خیلی وقت ها از من پرسیده شده. در واقع مشکل اینجاست که فرد داره داده مورد نظرشو توی داده ها می بینه، اما تابع vlookup  اونو نمیتونه پیدا کنه و خطای N/A# رو نشون میده یا اشتباها داده دیگه ای رو بر میگردونه و از نظر ما درست نیست. حالا میخوایم بررسی کنیم ببینیم مشکل تابع Vlookup از کجاست. (این شرایط برای تابع Hlookup و Match هم برقرار هست).

این مشکل میتونه دو حالت داشته باشه:

۱- خروجی فرمول درست نیست و در واقع داده غیر مرتبط رو نشون میده.

این به دلیل اینه که آرگومان آخر این تابع ۰ یا False گذاشته نشده . وقتی این آرگومان تعیین نمیشه و خالی گذاشته میشه، جستجو بصورت دقیق نیست و داده نا مرتبط برگردانده میشه. برای آشنایی بیشتر با این آرگومان آخر، این پست رو مطالعه کنید. پس برای حل این مشکل، آرگومان آخر تابع رو ۰ قرار بدید. توجه کنید که گاهی اوقات در این حالت ممکن است خروجی،خطای #N/A نیز باشد.

۲- خروجی فرمول خطای N/A# است.

وقتی خروجی فرمول خطای N/A# است، علاوه بر مورد شماره ۱ (برسی آرگومان آخر فرمول)، باید دو مورد زیر رو هم بررسی کنیم:

مرحله اول: بررسی کنیم ببینیم آیا واقعا دو داده با هم برابرند یا نه؟ برای این کار از = استفاده میکنیم.

اگر خروجی True بود یعنی دقیقا با هم برابرند و اینجا باید چک کنیم ببینیم موردی که در Lookup استفاده شده درست هست یا نه؟ همچنین Match Type رو بررسی کنیم که صفر گذاشته شده باشه.

نکته:
این موضوع در خصوص حروف و کلمات فارسی که “ی” و “ک” دارند هم زیاد اتفاق میفته. اینجور مواقع Lookup value رو حتما از سلول بگیریم که دچار این اشتباه نشیم.

 

مشکل تابع Vlookup - بررسی مساوی بودن دو داده مورد نظر

شکل ۱-مشکل تابع Vlookup – بررسی مساوی بودن دو داده مورد نظر

 اگه خروجی False  بود باید رو نکته زیر رو بررسی کنیم:

علت اول:

احتمالا کاراکترهایی که قابل مشاهده نیستند (مثل فاصله Space) در یکی از سلول ها (یا در سلول Lookup value یا در محدوده جستجو table Array) وجود داره.

راه حل:

از تابع Trim استفاده میکنیم. این تابع Space های اضافی (فاصله اول و آخر یک سلول) رو حذف میکنه. برای اینکار مراحل رو طبق تصویر زیر انجام میدیم:

حذف فاصله های اضافی

 

نکته:
تابع Trim فقط فاصله (Space) رو حذف میکنه. اگر کاراکترهای غیرقابل مشاهده دیگه ای در سلول وجود داشته باشه باید از تابع Clean استفاده کنید. در واقع همه کارهایی که برای تابع Trim کردیم رو در مورد تابع Clean هم انجام میدیم.

 

علت دوم:

داده هایی که از نظر ما یکسان هستند، ممکنه نوع داده (Data Type) متفاوتی داشته باشند. مثلا یکی به عنوان متن ذخیره شده باشه و یکی بصورت عدد. در اینصورت علیرغم تساوی ظاهری، با هم برابر نیستند. یک راه ساده برای اینکه تشخیص بدیم داده بصورت عدد ذخیره شده یا متن، اینه که از تابع IsText یا IsNumber استفاده کنیم.

مشکل تابع Vlookup - بررسی نوع داده ذخیره شده

شکل ۲- مشکل تابع Vlookup – بررسی نوع داده ذخیره شده

همونطور که در شکل ۲ می بینید سلول ۲A بصورت متنی ذخیره شده ولی سلول D3 بصورت عددی هست. پس علیرغم ظاهر مشابه، با هم تفاوت دارند. حالا باید نوع داده ها رو یکسان کنیم. یا متنی ها رو به عدد تبدیل کنیم یا عددی ها رو به متن.

برای این کار حتما آموزش چهار روش تبدیل متن به عدد رو مطالعه کنید.

کلیدواژه : تابع Vlookupمتوسط
آواتار
182

فارغ التحصیل لیسانس مهندسی صنایع، ارشد مدیریت صنعتی از دانشگاه تربیت مدرس و عاشق اکسل هستم. از سال 1388 که ترم 2 لیسانس بودم، به توصیه استاد مشاورم شروع به خوندن اکسل بصورت حرفه ای کردم و همچنان در حال مطالعه و یادگیری و البته آموزش به بقیه هستم.

دیدگاه کاربران
  • علی ۱۲ تیر ۱۴۰۴ / ۱:۵۳ ق٫ظ

    خانم خاکزاد بی نظیرید. سالهاست دارم از تجربیاتتون و راهنمایی هاتون استفاده می کنم و مشکلاتم را در اکسل حل می کنم. الانم تابع trim مشکلی که چند روز منو درگیر کرده بود حل کرد. سپاسگذارم

  • مهدی ل ۵ مرداد ۱۴۰۳ / ۱:۰۰ ق٫ظ

    سلام، اگر بخواهیم در تابع لوکاپ وقتی در آرگومان دوم پیدا نشد و لوکاپ نتیجه مشابه کمتری رو پیدا کرد و نشون داد، به ما با رنگ دیگه ای مثل قرمز یه آلارمی بده باید چیکار کرد،

    • آواتار
      حسنا خاکزاد ۵ مرداد ۱۴۰۳ / ۱۲:۴۴ ب٫ظ

      درود بر شما
      کافیه از مقایسه vlookup با سرچ دقیق و تخمینی به یک گزاره true, false برسید و بذاریدش در CF
      که بتونه در صورتی که برابر نبودن، رنگ کنه. یعنی ی همچین فرمولی:
      =vlookup(….,….,….,true)<>vlookup(….,….,….,false)

  • مهدی ۱۱ بهمن ۱۴۰۲ / ۱:۰۲ ب٫ظ

    سلام. از مطالب خوبتون سپاسگزارم.
    می توانم فایلم را که مشکل دارم برای شما ارسال کنم تا شما ملاحظه بفرمایید . برای شما کاری ندارد.

  • مرتضی صلحی اناری ۸ مهر ۱۴۰۲ / ۱۰:۲۵ ق٫ظ

    خیلی شیک و مجلسی کار رو جمع کردید.
    ممنون

    • علیرضا پسندی ۲۴ مهر ۱۴۰۲ / ۱۱:۳۹ ب٫ظ

      سلام
      وقت بخیر
      من با بارکد خوان یه بارکدی رو میخونم. تو ستون کناریش ۱۰ رقم اول رو جداسازی میکنم و بعد با ستون اصلی تطابق میدم تا نام کالا رو بیاره.
      ولی متاسفانه وقتی اطلاعات یه شرکت رو پاک میکنم و شرکت دیگر رو وارد میکنم ارور n#a میده.
      چیکار باید بکنم؟؟
      تمام مراحلی هم که نوشتید اعمال کردم ولی فرقی نکرد

      • سامان چراغی ۱۲ فروردین ۱۴۰۳ / ۱۰:۴۴ ق٫ظ

        درود
        به موارد مختلفی میتونه ربط داشته باشه.
        نحوه حذف کردن (سلول رو Delete کردن)
        اطلاعات جدیدی که وارد میکنید
        بازه داده ای که تابع داره استفاده میکنه

  • منصوره ۱۴ مرداد ۱۴۰۲ / ۱:۱۸ ب٫ظ

    سلام یه سوال ساده داشتم برای اکسل میخواستم ببینم چطور میشه مثل ورد دور صفحه حاشیه و قاب گذاشت ؟

    • آواتار
      حسنا خاکزاد ۱۵ مرداد ۱۴۰۲ / ۱۲:۳۹ ب٫ظ

      درود بر شما
      باید با استفاده از Border کادر دلخواه رو برای اون محدوده رسم کنید

  • احمد رضا شریف نائینی ۳ مرداد ۱۴۰۲ / ۴:۵۵ ب٫ظ

    سلام استاد ، خسته نباشین ، داخل تابع Vlookup ارور N/A# همه موارد رو هم چک کردم ولی مشگل حل نشد ، امکانش هست فایل رو واستون ارسال کنم ببینین مشگل کجاست ؟؟ ممنون میشم

    • آواتار
      حسنا خاکزاد ۴ مرداد ۱۴۰۲ / ۱۲:۲۰ ب٫ظ

      درود بر شما
      بله ایمیل کنید به info@excelpedia.net

  • منصوره ۳۰ خرداد ۱۴۰۲ / ۳:۵۶ ب٫ظ

    خییییلیییییی ممنوووونم واقعا دستتون درد نکنه مشکلم حل شد خیلی گلی ???????

  • منصوره ۲۹ خرداد ۱۴۰۲ / ۱۰:۳۶ ق٫ظ

    آره دو تا ستون شناسه دارم اگر لطف کنید بهم بگید واقعا به مشکل برخوردم ممنون میشم ازتون

    • آواتار
      حسنا خاکزاد ۲۹ خرداد ۱۴۰۲ / ۱:۵۷ ب٫ظ

      میتونید با دستور append در پاورکوئری این دو ستون رو بیارید در امتداد هم بعد vlookup انجام بدید
      یا در گوگل شیت از vstack استفاده کنید
      اگر سوال این نیست واضح تر توضیح بدید مثال بزنید

  • منصوره ۲۸ خرداد ۱۴۰۲ / ۴:۱۲ ب٫ظ

    سلام من یک فایل دارم که حاوی دو ستون شناسه و قیمت هستش میخوام با استفاده از شناسه به قیمت برسم اما تنها در ستون اول جستجو میکنه ایا امکانش هست کاری کنم که در دوستون شناسه جستجو کنه و قیمت رو بهم بگه ؟ ممکنه راهنماییم کنید ممنونم

    • آواتار
      حسنا خاکزاد ۲۸ خرداد ۱۴۰۲ / ۵:۴۶ ب٫ظ

      درود
      یعنی در دو ستون شناسه دارید؟
      سوال مبهمه

ارسال دیدگاه

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

توسط
تومان