جدول المحتويات
في Excel ، قد تتطلب الظروف التحقق مما إذا كانت الخلية تحتوي على نص محدد أم لا. سنعرض لك اليوم كيفية التحقق مما إذا كانت الخلية تحتوي على نص معين. في هذه الجلسة ، نستخدم Excel 2019 ، فلا تتردد في استخدام الإصدار المفضل لديك.
أول الأشياء أولاً ، دعنا نتعرف على مجموعة البيانات التي تشكل أساس الأمثلة لدينا
.
لدينا جدول يحتوي على معلومات عدة طلاب مع درجاتهم. باستخدام مجموعة البيانات هذه ، سنتحقق مما إذا كانت الخلية تحتوي على نص معين أم لا.
لاحظ أن هذه مجموعة بيانات أساسية لإبقاء الأمور بسيطة. في سيناريو الحياة الواقعية ، قد تواجه مجموعة بيانات أكبر بكثير ومعقدة.
Practice Workbook
يمكنك تنزيل مصنف التدريب من الارتباط أدناه.
Excel إذا احتوت الخلية على نص معين. xlsxإذا كانت الخلية تحتوي على نص معين
1. تحتوي الخلية على نص محدد فقط
يمكننا البحث في خلية قد (أو لا ) تحتوي بالضبط فقط على النص (السلسلة) التي نبحث عنها. لن تكون هناك سلاسل إضافية معها.
على سبيل المثال ، في مجموعة البيانات الخاصة بنا ، يحتوي العمود الدرجة على مرت أو فشل في كل خلية . لا توجد كلمات أو سلاسل إضافية غير موجودة. لذلك ، يمكننا التحقق مما إذا كانت الخلية الموجودة في هذا العمود تحتوي على ناجح أو فشل .
هنا ، على سبيل المثال ، سنقوم تحقق مما إذا كانت الخلية تحتوي على "تم اجتيازه" أم لا ثمأضف ملاحظة في العمود الملاحظات الذي تم تقديمه حديثًا.
سماع كلمات مثل "تحقق" ، إحدى الوظائف الأولى التي تتبادر إلى ذهنك هي IF . تقوم الوظيفة IF بإجراء اختبار منطقي وإرجاع قيمة ثنائية (TRUE أو FALSE).
لنكتب الصيغة باستخدام IF للتحقق مما إذا كانت الخلية تحتوي على القيمة المحددة نص "ناجح" أم لا.
=IF(D4="Passed","Promoted","")
هنا ، قمنا بتعيين عملية منطقية D4=”Passed”
الذي يقارن إذا كان D4 يحتوي على "ناجح" أم لا.
بالنسبة إلى if_true_value قمنا بتعيين "تمت ترقيته" ، سيظهر كنتيجة بمجرد العثور على الخلية يحتوي على النص. في الوقت الحالي ، لم يتم توفير if_false_value .
تحتوي الخلية D4 على نص البحث ، "Passed" ، لذلك أعادت الصيغة if_true_value .
الآن ، اكتب الصيغة لبقية الخلايا. يمكنك أيضًا ممارسة ميزة AuoFill .
كما ترى ، أعادت صيغتنا if_true_value ، "Promoted" ، بشكل مثالي للخلايا التي تحتوي على "تمرير".
هذا يعمل بطريقة غير حساسة لحالة الأحرف. إذا احتوت أي من الخلايا على "تم تمريره" بدلاً من "تم اجتيازه" ، فستعمل أيضًا.
اقرأ المزيد: Excel ابحث عن نص في النطاق
2. تحتوي الخلية على نص محدد (تطابق جزئي)
في بعض الأحيان قد نحتاج إلى البحث عن نص معين داخل خلية كسلسلة فرعية. في هذا القسم ، سنفعلتعرف على كيفية القيام بذلك.
على سبيل المثال ، سنبحث عن سلسلة (اسم المجموعة) داخل خلايا العمود ID .
قدمنا هنا عمودين يتطابقان مع سياق مثالنا.
يمكنك رؤية عمود سلسلة البحث قمنا بدمج الصفوف. اتبع مقالة صفوف الدمج هذه للتعرف على التقنيات.
1- المطابقة من خلال وظيفة FIND (حساسة لحالة الأحرف)
في القسم السابق ، استخدمنا IF للتحقق من النص (باستخدام التعبير المنطقي). ستكون هذه الوظيفة قيد الاستخدام على الرغم من أننا نحتاج إلى وظائف دعم أخرى.
وظيفة FIND هي وظيفة سنقوم بإقرانها مع IF للتحقق مما إذا كان تحتوي الخلية على نص محدد على الأقل كسلسلة فرعية.
على سبيل المثال ، اخترنا سلسلة "AB" سنبحث داخل الخلايا من العمود معرّف .
الآن ، دعنا نكتب صيغة الخلية B4 .
=IF(ISNUMBER(FIND($E$4,B4)),”Found”,"Not Found")
هنا يمكنك رؤية الوظيفة ISNUMBER . يعرض ISNUMBER TRUE عندما تحتوي الخلية على رقم ، و FALSE إذا لم يكن
استخدمنا هذه الوظيفة لأنها تتحقق مما إذا كان FIND نتيجة الدالة رقم أم لا. تقوم بإرجاع قيمة منطقية.
عندما يعرض ISNUMBER TRUE ، فإن الدالة IF ستشغل if_true_value (Found) ، وإلا فإن if_false_value (ليسوجدت) .
هنا للخلية الأولى ، أرجع ISNUMBER-FIND TRUE وأصبح الناتج النهائي “Found”.
دعونا نستخرج اسم المجموعة. لذلك ، سوف نستخدم وظيفة MID . تستخرج هذه الوظيفة الأحرف من منتصف سلسلة معينة.
=IF(ISNUMBER(FIND($E$4,B4)),MID(B4,FIND($E$4,B4),2),"")
أولاً ، تحققنا مما إذا كانت الخلية تحتوي على نص محدد ، ثم في الحقل if_true_value ، قمنا بتعيين وظيفة MID لجلب القيمة. يوفر البحث ضمن MID نقطة البداية ثم حرفان. سيؤدي هذا إلى جلب اسمي المجموعة المكونة من حرفين.
لقد وجدنا اسم المجموعة عندما تحتوي الخلية على النص.
منذ البحث حساس لحالة الأحرف ، فلن ينفذ if_true_value لـ "ab".
اكتب الكود لبقية الخلايا. ستجد اسم مجموعة تمت كتابته تمامًا مثل سلسلة البحث .
قم بتغيير قيمة سلسلة البحث ، فأنت سوف تجد النتيجة المحدثة.
II. المطابقة من خلال وظيفة البحث (غير حساسة لحالة الأحرف)
في القسم السابق ، لاحظنا نهجًا حساسًا لحالة الأحرف. من أجل الحفاظ على مرونة الأمور ، يمكننا اعتماد نهج غير حساس لحالة الأحرف. لذلك ، ستكون وظيفة SEARCH مفيدة.
SEARCH ترجع موقع سلسلة نصية واحدة داخل أخرى. تعمل على غراروظيفة FIND ، لكنها غير حساسة لحالة الأحرف.
الصيغة كما يلي
=IF(ISNUMBER(SEARCH($E$4,B4)),MID(B4,SEARCH($E$4,B4),2),"")
يبدو مشابهًا لقسم البحث . التغيير الوحيد هو أننا استبدلنا بحث بـ بحث . باقي الصيغة هي نفسها وتعمل بنفس الطريقة تمامًا.
لقد وجدنا اسم المجموعة عندما تحتوي الخلية على النص.
اكتب الصيغة لبقية الخلايا. ستجد جميع أسماء المجموعات التي تحتوي على "AB" بأي شكل.
إذا كتبنا "ab" على أنها سلسلة البحث فستظل كذلك إحضار هذه القيم.
III. المطابقة باستخدام دالة COUNTIF (غير حساسة لحالة الأحرف)
تتضمن طريقة أخرى للتحقق من الخلية نصًا محددًا كسلسلة فرعية تجمع بين IF و COUNTIF . سيكون هذا الأسلوب أيضًا غير حساس لحالة الأحرف.
هذه الوظيفة COUNTIF تحسب الخلايا في نطاق يلبي شرطًا واحدًا.
الآن ستكون الصيغة هي التالية واحد.
=IF(COUNTIF(B4,"*"&$E$4&"*"),MID(B4,SEARCH($E$4,B4),2),"")
هنا قمنا بفحص المنطق باستخدام COUNTIF . باستخدام COUNTIF يتحقق ما إذا كانت قيمة العد هي 1 أم لا.
إذا كان COUNTIF يُرجع 1 ، فإن الجزء if_true_value ( MID لاستخراج المجموعة name). تمت مناقشة الجزء MID في القسم السابق.
بالنسبة إلى 0 من الجزء COUNTIF ، ستعود الصيغة if_false_value (خلية فارغة ، للوقتيجري).
لقد وجدنا التطابق ثم أعادت الصيغة اسم المجموعة عندما تحتوي الخلية على نص محدد.
اكتب الصيغة الخاصة بـ باقي الخلايا. ستجد جميع أسماء المجموعات التي تحتوي على سلسلة البحث بأي شكل.
لنغير قيمة سلسلة البحث ، النتائج المحدثة ستكون أمامنا.
لمزيد من نهج المطابقة الجزئية COUNTIF تفضل بزيارة مقالة COUNTIF PARTIAL MATCH هذه. إذا كنت مهتمًا بالمطابقة الجزئية مع if ، فيمكن أن تكون مقالة IF Partial Match مفيدة لك.
الخاتمة
هذا كل شيء لليوم. لقد قمنا بإدراج عدة طرق للتحقق مما إذا كانت الخلية تحتوي على نص معين في Excel. آمل أن تجد هذا مفيدًا. لا تتردد في التعليق إذا كان من الصعب فهم أي شيء. أخبرنا بأي طرق أخرى ربما فاتناها هنا.