سبد خرید
0

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

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

تابع Vlookup اکسل | معرفی و آشنایی

تابع Vlookup اکسل
۳/۵ - (۴۷ امتیاز)

آشنایی با تابع Vlookup اکسل

جستجو و فراخوانی در اکسل، از مباحث حرفه ای و کاربردی به شمار می رود. به همین منظور است که یک دسته از توابع در اکسل به این موضوع مهم اختصاص داده شده است. دسته توابع Lookup & Reference، همه توابع مربوط به جستجو و فراخوانی و ارجاع را در خود جای داده است. توابع موجود در این دسته از اهمیت بسیار زیادی برخوردار هستند. مخصوصا که این توابع هنگامی که با یکدیگر و سایر توابع ترکیب می شوند نتایج فوق العاده ای خلق می کنند. یک فرد حرفه ای در اکسل، لازم است مهارت و تسلط زیادی روی این دسته از توابع داشته باشد. یکی از معروف ترین توابع از این دسته، تابع Vlookup اکسل است.

بسیاری از مواقع نیاز داریم که از یک دیتابیس یا همان بانک اطلاعاتی، داده ای را جستجو کرده و فراخونی کنیم. مثلا یک بانک اطلاعاتی از اطلاعات کارکنان یک شرکت شامل کد ملی، نام، نام خانوادگی، میزان تحصیلات، میزان حقوق و … داریم. حالا میخواهیم در جایی دیگر، کد ملی شخص را وارد کرده و سایر اطلاعات مربوط به وی را فراخوانی کنیم. یکی از راه های مناسب برای انجام این کار استفاده از تابع Vlookup اکسل است.

آرگومان های تابع Vlookup اکسل

این تابع شامل چهار آرگومان به شرح زیر است:

Lookup_Value: عبارت یا سلی که می‏خواهیم جستجو کنیم.

Table_Array: جدولی که جستجو در آن انجام می‏شود.

Col_index_Num: شماره ستونی از جدول است که می‏خواهیم برگردانده شود.

Range_Lookup: تعیین می‏کند که بصورت دقیق جستجو کند یا تخمینی.

تشریح یک مثال حل شده

در ادامه با یک مثال به تشریح آرگومان های این تابع می پردازیم.

در بانک اطلاعاتی زیر کد مشتری و اطلاعات مربوط به خرید هر مشتری موجود است. همانطور که در شکل ۱ مشخص است، می خواهیم کد مشتری را در سل G3 وارد کرده و تاریخ خرید همان مشتری را در سل روبرو  (H3)مشاهده کنیم (به این کار فراخوانی گفته می شود).

جستجوی دقیق در تابع Vlookupشکل ۱ – نحوه نوشتن تابع Vlookup

آرگومان اول: موردی است که به جستجوی آن پرداختیم. در اینجا کد مشتری Lookup-Value ما خواهد بود که در سل G3 نوشته شده است.

=VLOOKUP(G3,A1:E16,5,0)

آرگومان دوم: محدوده ای است که جستجو در آن انجام می شود. در اینجا محدوده A1:E16، Table_Array ما خواهد بود.

=VLOOKUP(G3,A1:E16,5,0)

آرگومان سوم: این آرگومان از جنس عدد است و تعیین می کند که چندمین ستون از محدوده جستجو را برگرداند. در اینجا میخواهیم تاریخ خرید مربوط به هر مشتری فراخوانی شود. پس باید ببینیم تاریخ خرید، چندمین ستون از محدوده جستجو است. در اینجا فیلد تاریخ خرید، ستون پنجم از Table_Array است.

=VLOOKUP(G3,A1:E16,5,0)

آرگومان چهارم: مقدار ۰ جستجوی دقیق و عدد ۱ جستجو تخمینی را انجام میدهد. باید به این نکته اشاره کنم که مقدار ۱ کاربردهای خاصی برای برخی مسائل دارد و اغلب اوقات ما آرگومان چهارم را ۰ قرار می دهیم زیرا به دنبال جواب دقیق هستیم.

=VLOOKUP(G3,A1:E16,5, )

در آینده حتما کاربردی خاص از جستجوی تخمینی را ارائه خواهم کرد.

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

حالا اگر بخواهیم مبلغ خرید را فراخوانی کنیم، فقط کافیست عدد ۵ را به ۴ تغییر دهیم. زیرا مبلغ خرید چهارمین ستون از محدوده جستجو یا همان Table_Array هست.

چند نکته

نکته اول: آیتمی که مورد جستجو قرار می گیرد، همیشه باید در اولین ستون از Table_Array موجود باشد. فرض کنید می خواهیم اطلاعات مربوط به شرکت ها را جستجو کنیم. مثلا می خواهیم مبلغ خرید شرکت E را فراخوانی کنیم. فرمول به شرح شکل۲ تغییر خواهد کرد:

تابع

شکل۲ – انتخاب محدوده جستجو در Vlookup

دقت داشته باشید که محدوده جستجو یا همان Table_Array به B1:E16 تغییر کرده چرا که نام شرکت در ستون B قرار دارد و ما میخواهیم نام شرکت را مورد جستجو قرار دهیم. همچنین با توجه به این تغییر، مبلغ خرید، سومین ستون از Table_Array خواهد بود.

 

نکته دوم: در حالت عادی تابع Vlookup موارد تکراری را جستجو نمی کند. یعنی اگر در ستون نام شرکت، بیش از یک شرکت E وجود داشته باشد، Vlookup همواره به مورد اول که برسد، همان را بر می گرداند و موارد بعدی را جستجو نمی کند. البته برای برطرف کردن این موضوع ترفندهایی می شود بکار بست که در مقاله جستجو موارد تکراری میتونید این مسئله رو حل کنید.

نکته خیلی مهم
مشکلی که در بسیاری اوقات افراد با آن مواجه میشوند، این است که اعداد در تابع Vlookup پیدا نمیشوند و خروجی تابع، خطای #N/A دیده میشود.
یکی از علل این مسئله جنس داده ها است. به این معنی که اعداد به صورت متن درآمده اند. در این مواقع بهتر است همه اعدادی که جنس عدد ندارند را در عدد یک ضرب کنیم تا به صورت عدد شناسایی شوند و در محاسبات این تابع در نظر گرفته شوند.
کلیدواژه : تابع Vlookupمتوسط
آواتار
145

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

دیدگاه کاربران
  • بهار ۲۷ خرداد ۱۳۹۹ / ۱۲:۲۵ ب٫ظ

    سلام
    یک لیست دارم تعدادی مشتری هستند به صورت نقدی و غیر نقدی که رو به روی ستون مبالغ ، درج شده با چه فرمولی می تونم جمع نقدی ها یا غیر نقدی ها رو در یک سلول جداگانه داشته باشم

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

      درود بر شما
      از تابع sumif استفاده کنید

  • فائقه ,هنگر ۲۲ خرداد ۱۳۹۹ / ۹:۴۶ ق٫ظ

    سلام
    در یک فایل حدود ۲۰۰ شیت دارم میخوام ردیف ۷۰ همه این شیت هارو در یک شیت جدا جمع کنم . چطوری این کار رو انجام بدم ؟

    • سامان چراغی ۲۳ خرداد ۱۳۹۹ / ۱۱:۳۱ ق٫ظ

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

      =SUM(Sheet1:Sheet200!A70:N70)
      

      این فرمول جمع تمام سلول های ستون A تا N ردیف ۷۰ در تمام شیت های بین Sheet1 تا Sheet200 رو به شما میده
      کافیه اسم شیت های اول و آخر رو در فرمول بالا و آدرس سلول ها رو عوض کنید و در فایل خودتون استفاده کنید.

  • مسرور ۴ بهمن ۱۳۹۸ / ۳:۴۹ ب٫ظ

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

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

      درود بر شما
      راه حل استفاده از توابع جستجو مثل index, small, if و …. بصورت آرایه ای هست

  • جوادشاد ۳۰ دی ۱۳۹۸ / ۵:۱۴ ب٫ظ

    باسلام واحترام
    در فرمول تبدیل عدد به حروف چطوری میتونیم ثابتش کنیم الان هروقت که فایل اکسل رو بازمیکنم فرمولش رو باید اینزرت کنم چطوری میشه استیبلش کرد

  • احمد عباسی ۲۸ دی ۱۳۹۸ / ۹:۰۶ ق٫ظ

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

    • سامان چراغی ۲۸ دی ۱۳۹۸ / ۹:۳۸ ق٫ظ

      سلام
      اگر منظورتون اینه که فقط نتیجه فرمول که عدد یا متن هست رو منتقل کنید از Paste Special استفاده کنید.

  • رضا خدائی میدانجق ۲۴ دی ۱۳۹۸ / ۲:۴۰ ب٫ظ

    با سلام و خدا قوت
    من بالغ بر ۱۴ سال با اکسل کارکردم و الان فرمول نویسیم خوب است و به واسطه شغلم (حسابداری حقوق و دستمزد ) مدام با اکسل کارمیکنم ، میخوام بدونم VBA را از کجا شروع کنم
    با سپاس
    رضا خدائی میدانجق

  • محمد ۲۵ شهریور ۱۳۹۸ / ۴:۱۶ ب٫ظ

    عالی . دو روز بود دستور رو اجرا میکردم جواب نمیداد. بخاطر text بودن سلولها
    سپاس بخاطر راهنمایی

  • عیسی ۲۰ مرداد ۱۳۹۸ / ۴:۱۸ ب٫ظ

    سلام
    در یه ستون ۱۰۰ ردیف مبلغ دارم. مثلا در یه سلول مبلغ ۵۴۰۰۰ رو که نوشتم میخام سلولهایی که حاصل جمعشون میشه ۵۴۰۰۰ برام مشخص بشه. آیا فرمولی هست که بشه این کار رو برامون انجام بده؟ (به بیان دیگه، پیدا کردن جزئیات یک عدد در ستون) ماکرو هم بلد نیستم ممنون میشم راهنمایی بفرمایید

    • سامان چراغی ۱۵ مهر ۱۳۹۸ / ۸:۴۹ ق٫ظ

      سلام
      تنها با VBA میشه این کار رو کرد که با توجه به اینکه حالت های خیلی زیادی برای تجمیع این اعداد و مقایسه با عدد مورد وجود داره با توضیحی که فرمودید نمیشه کاری کرد.

  • سامان ۱۷ تیر ۱۳۹۸ / ۴:۰۱ ب٫ظ

    سلام و وقت بخیر –
    ممنون بابت آموزش قدم به قدم
    یک مشکلی که هست برای تمرین دیتا پیدا نمیکنم
    دوستی بهم گفت خودت تولید کن
    تولید یک دیتا خیلی زمان بره- راهی هست بشه اینکارو سریع انجام داد؟

    • سامان چراغی ۱۷ تیر ۱۳۹۸ / ۵:۲۶ ب٫ظ

      سلام،
      از تابع Randbetween استفاده کنید. ضمن اینکه با جستجو دیتابیس های زیادی پیدا میشه

  • avy ۳۰ خرداد ۱۳۹۸ / ۱۱:۲۲ ق٫ظ

    سلام. روزتون بخیر.
    یه سوال داشتم ، من یه جدول دارم که ازش توی لیست کشویی استفاده کردم. میخوام تو یه خونه مقدار ستون بعدی چیزی که انتخاب کردم رو نشون بده، این امکانش هست؟ مثلاً هر محصوال که انتخاب شد، بیاد خونه بقلیش که مربوط به قیمت همون محصول هست رو نشون بده.

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

      درود بر شما
      دقیقا با همین تابع vlookup در اموزش بالا شدنی هست

ارسال دیدگاه

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

توسط
تومان