فهرست مطالب
در مایکروسافت اکسل، چندین روش مفید برای جستجوی تطابق متن جزئی و سپس استخراج داده ها بر اساس آن تطابق خاص وجود دارد. در این مقاله، همه روشهای مناسب برای جستجوی متنهای جزئی در اکسل با ترکیب توابع و فرمولهای جستجوی مختلف را خواهید آموخت.
دانلود کتاب تمرین تمرین
می توانید کتاب کار Excel را که برای تهیه این مقاله استفاده کرده ایم دانلود کنید.
جستجوی متن جزئی Match.xlsx
5 روش مناسب برای جستجوی تطابق متن جزئی در اکسل
1. مطابقت جزئی متن با VLOOKUP در اکسل
در تصویر زیر جدولی حاوی نمرات دروس مختلف برای برخی از دانش آموزان در یک امتحان وجود دارد. اکنون بر اساس تطابق جزئی یک متن از ستون B ، علائم یک موضوع را برای دانش آموز استخراج می کنیم.
به عنوان مثال، می توانیم متن را جستجو کنیم. "تیک" را در ستون Name علامت بزنید. بر اساس تطابق جزئی، نام واقعی آن دانش آموز را می یابیم و سپس نمره های ریاضی دانش آموز مربوطه را از جدول استخراج می کنیم.
در این مثال، از استفاده می کنیم. تابع VLOOKUP در اینجا زیرا این تابع به دنبال مقداری در سمت چپ ترین ستون جدول می گردد و سپس مقدار موجود در همان سطر را از ستون مشخص شده برمی گرداند. فرمول عمومی این تابع VLOOKUP این است:
=VLOOKUP(مقدار_جستجو، آرایه_جدول، col_index_number،[range_lookup])
از آنجایی که ما می خواهیم نمره های ریاضی دانش آموزی را که نامش حاوی متن "تیک" است را برداریم ، بنابراین فرمول مورد نیاز در خروجی Cell D17 خواهد بود:
=VLOOKUP(D16,B5:G14,5,FALSE)
یا،
=VLOOKUP("*Tick*",B5:G14,5,FALSE)
بعد از فشار دادن Enter ، علائم ریاضی برای Tickner به شما نشان داده می شود.
بیشتر بخوانید: نحوه استفاده از VLOOKUP برای تطبیق جزئی در اکسل (4 روش)
2. جستجوی تطابق متن جزئی با توابع INDEX-MATCH
اکنون از ترکیب توابع INDEX و MATCH استفاده خواهیم کرد. تابع INDEX یک مقدار یا مرجع سلول را در تقاطع سطر و ستون خاص در یک محدوده معین برمی گرداند و تابع MATCH موقعیت نسبی یک آیتم را در آرایه ای برمی گرداند که با یک مقدار مشخص به ترتیب مشخص مطابقت دارد.
ما خروجی مشابهی را که در روش قبلی یافت شد پیدا می کنیم. بنابراین، در این بخش، فرمول مورد نیاز در خروجی Cell D18 خواهد بود:
=INDEX(B5:G14,MATCH(D17,B5:B14,0),MATCH(D17,B4:G4,0))
یا،
=INDEX(B5:G14,MATCH("*Tick*",B5:B14,0),MATCH(D17,B4:G4,0))
اکنون Enter را فشار دهید و فرمول 91 را برمیگرداند - علائمی که تیکنر در ریاضیات به دست آورده است.
در این فرمول، دو تابع MATCH به ترتیب شماره ردیف و ستون نام دانش آموز و موضوع را مشخص می کنند. تابع INDEX سپس مقدار را در تقاطع آن اعداد سطر و ستون تعریف شده برمی گرداند.از آرایه.
بیشتر بخوانید: نحوه استفاده از INDEX و Match برای Match جزئی (2 روش)
3. XLOOKUP با کاراکتر عام برای جستجوی متن جزئی مطابقت
عملکرد XLOOKUP یک محدوده یا یک آرایه را برای مطابقت جستجو می کند و مورد مربوطه را از یک محدوده یا آرایه دوم برمی گرداند. فرمول عمومی این تابع به این صورت است:
=XLOOKUP(مقدار_ جستجو، آرایه_جستجو، آرایه_بازگشت، [اگر_نه_پیدا]، [حالت_مطابق]، [حالت_جستجو])
اکنون ما از این تابع XLOOKUP مستقیماً برای استخراج نمرات در ریاضی دانش آموزی که نامش حاوی متن "تیک" در داخل است استفاده می کنیم.
در خروجی سلول D18 ، فرمول مورد نیاز به صورت زیر خواهد بود:
=XLOOKUP("*"&D16&"*",B5:B14,F5:F14,,2)
پس از فشار دادن Enter ، خروجی مشابهی به شما نمایش داده می شود. در دو مثال قبلی.
در این تابع، ما از 2 به عنوان آرگومان [match_mode] استفاده کردهایم که نشاندهنده تطابق کاراکترهای عام است. اگر از این آرگومان استفاده نکنید، تابع به صورت پیشفرض خطای #N/A را برمیگرداند، تابع بهجای تطبیق کاراکتر عام، مطابقت دقیق را جستجو میکند.
4. ترکیب توابع XLOOKUP، ISNUMBER و SEARCH برای جستجوی متن جزئی مطابقت
اگر از استفاده از کاراکترهای عام در تابع جستجو اجتناب کنید، باید فرمول ترکیبی XLOOKUP را اعمال کنید. توابع ISNUMBER و SEARCH .
عملکرد ISNUMBER بررسی می کند که آیامقدار سلول یک مقدار عددی است یا خیر. تابع SEARCH تعداد کاراکتری را که برای اولین بار یک کاراکتر خاص یا یک رشته متن پیدا شده است، از چپ به راست باز می گرداند. فرمولهای عمومی این دو تابع به شرح زیر است:
=ISNUMBER(value)
و
=SEARCH(find_text، inside_text , [search_num])
بنابراین، فرمول مورد نیاز در خروجی Cell D18 خواهد بود:
=XLOOKUP(TRUE,ISNUMBER(SEARCH(D16,B5:B14)),F5:F14)
پس از فشار دادن Enter ، مقدار حاصل بلافاصله نشان داده می شود.
🔎 Formula چگونه است کار می کنید؟
- عملکرد SEARCH متن 'Tick' را در محدوده سلول B5:B14 جستجو می کند. و آرایه ای از:
{#VALUE!;#VALUE!;1;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;# را برمی گرداند. VALUE!;#VALUE!}
- عملکرد ISNUMBER سپس مقدار عددی آن آرایه را جستجو میکند و آرایه دیگری از مقادیر بولی را برمیگرداند:
{FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE}
- عملکرد XLOOKUP سپس به دنبال مقدار بولی مشخص شده- TRUE در آرایه یافت شده در مرحله قبل می گردد و شماره ردیف آن مقدار را در آرایه B5:B1 استخراج می کند. 4 .
- در نهایت، بر اساس آرایه برگشتی F5:F14 ، تابع XLOOKUP علامتهای ریاضی دانشآموزی را که نامش شامل میشود، ترسیم میکند. متن- 'Tick' داخل.
5. استفاده ازتوابع FILTER، ISNUMBER و SEARCH برای جستجوی متن جزئی مطابقت
در روش آخر، از ترکیب توابع FILTER، ISNUMBER و SEARCH استفاده خواهیم کرد. تابع FILTER در اینجا محدوده ای از سلول ها یا یک آرایه را بر اساس شرایط داده شده فیلتر می کند. فرمول عمومی این تابع این است:
=FILTER(آرایه، شامل، [if_empty])
از آنجایی که ما با مجموعه داده مشابهی سروکار داریم، بنابراین لازم است فرمول با تابع FILTER در خروجی Cell D18 خواهد بود:
=FILTER(F5:F14,ISNUMBER(SEARCH(D16,B5:B14)))
اکنون Enter را فشار دهید و فوراً مقدار حاصل را دریافت خواهید کرد.
در این فرمول، تابع FILTER محدوده سلول ها را فیلتر می کند- F5:F14 فقط بر اساس مقدار بولی - TRUE . ترکیب توابع ISNUMBER و SEARCH آرایه مقادیر بولی - TRUE و FALSE را برمیگرداند و آرگومان دوم ( شامل) از تابع FILTER .
Concluding Words
امیدوارم تمام روش های ذکر شده در بالا اکنون به شما در استخراج داده ها کمک کنند. بر اساس تطابق متن جزئی در صفحات گسترده اکسل شما. اگر سوال یا بازخوردی دارید، لطفا در قسمت نظرات با من در میان بگذارید. یا می توانید سایر مقالات ما را در رابطه با توابع اکسل در این وب سایت بررسی کنید.