فهرست مطالب
امروز می خواهیم یاد بگیریم که چگونه از VLOOKUP برای جستجوی Fuzzy Match در اکسل استفاده کنیم.
هنگامی که با مجموعه داده های بزرگتر کار می کنیم، اغلب سعی می کنیم مقادیر مشابه را فیلتر کنید یکی از این انواع تطبیق تطابق فازی نام دارد، که در آن مقادیر دقیقاً یکسان نیستند، اما همچنان بر اساس شباهت آنها مطابقت دارند.
بنابراین. بیایید در مورد نحوه استفاده از VBA VLOOKUP عملکرد اکسل برای جستجوی Fuzzy Match بحث کنیم.
مقدمه ای بر Fuzzy Match
یک تطابق فازی یک نوع تطابق جزئی است.
در این نوع مطابقت ها، یک متن به طور کامل با متن دیگر مطابقت ندارد. اما بخش های مهم متن با متن دیگر مطابقت دارد.
در مثال داده شده، کتاب «تاریخ هند در طول جنگ جهانی» شامل سه بخش مهم است: تاریخ ، هند ، و جنگ جهانی .
بنابراین همه کتابهایی که شامل یک یا بیش از یک هستند. از این بخش ها به طور مبهم با کتاب مطابقت دارد.
بنابراین، مطابقت های فازی عبارتند از:
- تاریخ جنگ جهانی دوم
- تاریخ یونان باستان
- جنگ جهانی: علل و آثار
- تمدن سند: تاریخ باستان
- هند آزادی را به دست آورد
- آدولف هیتلر: قبل و بعد از جنگ جهانی
- کشف هند
دانلود کتاب تمرین تمرین
VLOOKUP FuzzyMatching.xlsm
3 رویکرد برای VLOOKUP Fuzzy Match در اکسل
در اینجا ما یک مجموعه داده با نام از برخی از کتاب های یک کتابفروشی به نام.
هدف ما امروز استفاده از تابع VLOOKUP اکسل برای ایجاد برخی تطابق های فازی است. . بیایید در مورد 3 رویکرد مختلف بحث کنیم.
1. VLOOKUP تطبیق فازی با استفاده از حروف عام (تطابق کامل Lookup_Value)
- اول از همه، ما تعدادی تطابق فازی را با استفاده از کاراکتر علامت ستاره (*) ایجاد خواهیم کرد. اما به یاد داشته باشید، شما باید کل lookup_value را در این روش مطابقت دهید، نه بخش های جداگانه lookup_value .
به عنوان مثال، ما می توانیم یک کتابی که حاوی متن "جنگ جهانی دوم" به این صورت است.
فقط کتابهایی که متن کامل "جنگ جهانی دوم" را دارند مطابقت دارند.
0> فرمول ساده است. نماد ستاره (*) را در هر دو انتهای متن lookup_value قرار دهید.
فرمول این خواهد بود:
=VLOOKUP("*Second World War*",B5:B22,1,FALSE)
- همچنین می توانید به جای متن اصلی از یک مرجع سلولی نیز استفاده کنید. از نماد Ampersand (&) برای ادغام آنها در یک متن استفاده کنید. مانند این:
=VLOOKUP("*"&D5&"*",B5:B22,1,FALSE)
برای اطلاعات بیشتر در مورد VLOOKUP با استفاده از حروف عام، از این مقاله دیدن کنید.
بیشتر بخوانید: نحوه اجرای VLOOKUP با Wildcard در اکسل (2 روش)
2. با استفاده از تطابق فازیVBA
روش در بخش قبل تا حدی هدف ما را برآورده می کند، اما نه به طور کامل.
اکنون فرمولی را با استفاده از کد VBA استخراج می کنیم که تقریباً به طور کامل هدف ما را برآورده خواهد کرد.
- در ابتدا، یک پنجره VBA باز کنید و کد VBA زیر را در یک ماژول جدید وارد کنید:
کد :
2086
این کد تابعی به نام FUZZYMATCH می سازد.
- اکنون، آن را طبق مراحل روش 3 این مقاله ذخیره کنید .
این تابع FUZZYMATCH همه تطابقات فازی<را پیدا می کند. 2> از مقدار جستجوی مستقیما.
Syntax این تابع FUZZYMATCH این است:
=FUZZYMATCH(lookup_value,lookup_range)
برای یافتن تطابقات فازی کتاب «تاریخ هند در طول جنگ جهانی» ، این lookup_value را در یک سلول وارد کنید ( D5 در این مثال) و این فرمول را در سلول دیگری وارد کنید:
=FUZZYMATCH(D5,B5:B22)
ببینید، ما تمام تطابق فازی را پیدا کردیم es کتاب «تاریخ هند در طول جنگ جهانی»
- در اینجا D5 مرجع سلولی lookup_value است («The تاریخچه هند در طول جنگ جهانی").
- B5:B22 محدوده_جستجو است.
بیایید دریابیم مطابقات فازی کتاب دیگری به نام "یادداشت علل جنایت شهرهای بزرگ" .
این lookup_value را وارد کنیدیک سلول ( D5 در این مثال) و این فرمول را در سلول دیگری وارد کنید:
=FUZZYMATCH(D5,B5:B22)
💡 توضیح فرمول
- تابع FUZZYMATCH تابعی است که در VBA ساخته ایم . رشته ای به نام lookup_value و محدوده ای از سلول ها به نام lookup_range را می گیرد و آرایه ای از تمام Fuzzy Maches رشته را برمی گرداند.
- بنابراین FUZZYMATCH(D5,B5:B22) آرایه ای از تمام تطابقات فازی رشته در سلول D5 را از محدوده B5:B22 برمی گرداند. .
بیشتر بخوانید: نحوه VLOOKUP متن جزئی در اکسل (با گزینه های جایگزین)
مشابه خواندن
- VLOOKUP کار نمی کند (8 دلیل و راه حل)
- INDEX MATCH در مقابل عملکرد VLOOKUP (9 مثال)
- استفاده از VLOOKUP با چندین معیار در اکسل (6 روش + جایگزین)
- Excel VLOOKUP برای برگرداندن چندین مقدار به صورت عمودی
- VLOOKUP و برگرداندن همه موارد مطابق در اکسل (7 روش)
3. Fuzzy Match با استفاده از افزونه Fuzzy Lookup اکسل
Microsoft Excel یک افزونه به نام Fuzzy Lookup ارائه می دهد. با استفاده از آن، می توانید دو جدول را برای Fuzzy Lookup مطابقت دهید.
- ابتدا، Add-in را از این لینک<دانلود و نصب کنید. 2>.
- پس از دانلود و نصب موفقیت آمیز آن، افزونه Fuzzy Lookup را در نوار ابزار اکسل خود خواهید یافت.
- سپس ترتیب دهیدمجموعه داده ها به دو جدول تبدیل می شود که می خواهید مطابقت دهید.
- در اینجا من دو جدول حاوی دو لیست کتاب از دو کتابفروشی به نام Robert Bookshop and Martin Bookshop .
- بعد، به برگه Fuzzy Lookup بروید> روی Fuzzy Lookup ابزار در نوار ابزار اکسل کلیک کنید.
- از این رو، یک جدول Fuzzy Lookup دریافت خواهید کرد. در پانل کناری کتاب کار شما ایجاد شده است.
در گزینه های جدول چپ و جدول راست ، نام دو جدول را انتخاب کنید.
به خاطر این مثال، Robert و Martin را انتخاب کنید.
سپس در بخش Columns ، نام ها را انتخاب کنید. ستون های هر جدول.
در بخش Match Column ، نوع مطابقت مورد نظر خود را بین دو ستون انتخاب کنید. برای Fuzzy Match، Default را انتخاب کنید.
- در نهایت، روی Go کلیک کنید. شما نسبت تطبیق جداول را در یک جدول جدید دریافت خواهید کرد.
بیشتر بخوانید: VLOOKUP برای مقایسه دو لیست در Excel (2 یا بیشتر روش)
نتیجه گیری
با استفاده از این روش ها، می توانید از تابع VLOOKUP <2 استفاده کنید> از Excel برای جستجوی Fuzzy Match. اگرچه این روش ها 100% کارآمد نیستند، اما همچنان بسیار مفید هستند. آیا هیچ سوالی دارید؟ در قسمت نظرات از آنها بپرسید. فراموش نکنید که اگر روش های بهتری دارید به اشتراک بگذارید. با ExcelWIKI در ارتباط باشید.