جستجو

ترفندهای کامپیوتری

حضرت علی (ع): «زَکوةُ العِلمِ نَشرُهُ؛ زکات علم نشر آن است».
وبلاگ "ترفندها" (سایت پی‌سی‌ترفند) برای عمل به این حدیث شریف و با هدف ارتقاء دانش و مهارت‌های مرتبط با رایانه در ۳۰ مهرماه ۱۳۹۱ ایجاد شده است. به امید آنکه مفید واقع شود.
🔵 کانال‌ پی‌سی‌ترفند در تلگرام:
telegram.me/pctarfandir
🔵 ارتباط با ادمین:
telegram.me/pctarfand_admin

خلاصه آمار

تبليغات

۲

جستجو در بانک‌های اطلاعاتی با استفاده از توابع اکسل (قسمت دوم)

اکسل

جستجو در بانک‌های اطلاعاتی با استفاده از توابع اکسل (قسمت دوم)

قبلا در این مطلب توابع کاربردی برای جستجو در بانک‌های اطلاعاتی را معرفی کرده‌ بودیم. این توابع یک نقص مهم دارند و آن این است که اگر جدول مورد نظر به گونه‌ای باشد که عبارت مورد جستجو در ستون یا ردیف اول جدول قرار نداشته باشد نمی‌توان از توابع معرفی‌شده استفاده کرد. اما چاره کار چیست؟ در ادامه مطلب با پی‌سی‌ترفند همراه باشید تا با روش حل این مشکل آشنا شوید.

مثال زیر را در نظر بگیرید:

  A B
1 کد محصول نام محصول
2 1282 قطعه شماره 1
3 1464 قطعه شماره 2
4 1398 قطعه شماره 3
5 1339 قطعه شماره 4
6 1286 قطعه شماره 5

اگر بخوایم در این جدول نام محصول متناظر با کد 1398، را بدست بیاریم می‌توانیم از تابع VLOOKUP که در این مطلب معرفی شده است استفاده کنیم.

=VLOOKUP(1398;A:B;2;FALSE)

اما اگر عبارت مورد جستجو مانند جدول زیر در ستون دوم جدول قرار داشته باشد، در این حالت دیگر تابع VLOOKUP کارایی ندارد.

  A B
1 نام محصول کد محصول
2 قطعه شماره 1 1282
3 قطعه شماره 2 1464
4 قطعه شماره 3 1398
5 قطعه شماره 4 1339
6 قطعه شماره 5 1286

دلیل آنکه نمی‌توانیم با استفاده از تابع VLOOKUP بر اساس جستجوی کد محصول، نام محصول را بدست بیاوریم این است که نمی‌شود پارامتر سوم تابع VLOOKUP را 1- قرار داد و به عقب حرکت کرد. اینجاست که باید با استفاده از ترکیب دو تابع INDEX و MATCH که به ترتیب در این مطلب و این مطلب معرفی شده‌اند این مشکل را حل کرد.

۱- ابتدا تابع INDEX را می‌نویسیم و پارامتر اول آن را A:A قرار می‌دهیم، چون می‌خواهیم نام محصول را مشخص کنیم و نام محصول هم در ستون A قرار دارد.

=INDEX(A:A,

۲- در حالت عادی می‌توانیم شماره سطر را به تابع INDEX بدهیم. شماره سطر عدد 1398 برابر 4 هست اما ما نمی‌خواهیم این شماره سطر را دستی وارد کنیم. بلکه می‌خواهیم شماره سطر به صورت خودکار توسط اکسل پیدا شود. اینکار را با تابع MATCH انجام می‌دهیم. تابع زیر دقیقاً اینکار را برای ما انجام می‌دهد. یعنی عدد 1398 را در ستون B پیدا می‌کند و شماره سطر آن را که برابر 4 هست برمی‌گرداند.

=MATCH(1398,B:B,0)

۳- در نهایت تابع فوف را به شکل زیر در تابع INDEX قرار می‌دهیم.

=INDEX(A:A,MATCH(1398,B:B,0))

می‌توانیم به جای عدد 1398 یک سلول یا هر کد دیگری را قرار دهیم و تابع بالا نام محصول متناظر با آن کد را برای ما پیدا می‌کند.

نکته ۱: البته در مورد تابع Hlookup نیز می‌توانید از این دو تابع استفاده کنید.

نکته ۲: تابع Index دارای یک آرگومان سوم نیز هست که اختیاری است. با استفاده از این آرگومان می‌توانید جستجوی دوبعدی نیز انجام دهید یعنی پیدا کردن یک عبارت از روی شماره ردیف و ستون متناظر با آن، مانند تصویر زیر. توضیحات تکمیلی در این مورد را می‌توانید در این سایت مشاهده کنید.

منبع با تغییر: worksheet.ir

برای مطلع شدن از جدیدترین مطالب سایت، کانال‌ پی‌سی‌ترفند در تلگرام را با آی‌دی pctarfandir@ دنبال کنید:

          

سوالات خود در زمینه ورد و اکسل و ... را می‌توانید از طریق ایمیل و تلگرام با ما مطرح کنید.

آدرس ایمیل: tarfandha.blog@gmail.com

آی‌دی تلگرام: pctarfand_admin@

برچسب ها HLOOKUP LOOKUP Match VLOOKUP index

نظرات (۲)

  1. ابراهیمی قهدریجانی

    باسلام
    آیا می شود یک سل را در ستون جستجو کرد و آن سل قسمتی از سل مورد جستجو باشد وسپس گزینه روبروی آن سل را برگرداند.یعنی کاری مثل vlookup انجام دهیم بااین تفاوت که سل اول دقیقا برابر سل دیگرنباشد بلکه قسمتی از آن باشد.متشکرم

ارسال نظر

قبل از ارسال نظر به نکات زیر توجه کنید:

۱- با توجه با اینکه نظرات خصوصی شما امکان نمایش در سایت را ندارد، بنابراین هنگام ارسال نظر، گزینه "" را انتخاب نکنید. چون تنها راه پاسخگویی به آن از طریق ایمیل شما است که با توجه به مشغله کاری فرصت ارسال پاسخ از طریق ایمیل وجود ندارد.

۲- قبل از مطرح کردن سوالتان، مطلب فوق را با دقت مطالعه کنید. اگر پاسخ سوالتان را پیدا نکردید در سایت جستجو کنید، ممکن است در مطلب دیگر پاسخ سوالتان را پیدا کنید.

۳- تنها به سوالاتی پاسخ داده می‌شود که از نحوه حل آن‌ها اطلاع داشته باشم.

۴- نظراتی با مضمون زیر، صرفا تایید و نمایش داده می‌شود و به آن‌ها پاسخی داده نمی‌شود.

الف) در مورد پاسخ سوال شما اطلاعی نداشته باشم،

ب) پاسخ سوال شما در مطلب فوق وجود داشته باشد.

ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی