Excel: عد الخلايا التي تحتوي على نص معين (تطابق تام وجزئي)

  • شارك هذا
Michael Brown

يوضح البرنامج التعليمي كيفية حساب عدد الخلايا بنص معين في Excel. ستجد أمثلة صيغة للمطابقة التامة والمطابقة الجزئية والخلايا المصفاة.

في الأسبوع الماضي نظرنا في كيفية حساب الخلايا التي تحتوي على نص في Excel ، مما يعني جميع الخلايا التي تحتوي على أي نص. عند تحليل أجزاء كبيرة من المعلومات ، قد ترغب أيضًا في معرفة عدد الخلايا التي تحتوي على نص معين. يشرح هذا البرنامج التعليمي كيفية القيام بذلك بطريقة بسيطة.

    كيفية حساب الخلايا التي تحتوي على نص محدد في Excel

    لدى Microsoft Excel وظيفة خاصة لحساب عدد الخلايا بشكل مشروط ، دالة COUNTIF. كل ما عليك فعله هو توفير سلسلة النص الهدف في الوسيطة معايير .

    إليك صيغة Excel عامة لحساب عدد الخلايا التي تحتوي على نص محدد:

    COUNTIF (النطاق ، " text")

    المثال التالي يوضحه عمليًا. لنفترض أن لديك قائمة بمعرفات العناصر في A2: A10 وتريد حساب عدد الخلايا بمعرف معين ، على سبيل المثال "AA-01". اكتب هذه السلسلة في الوسيطة الثانية ، وستحصل على هذه الصيغة البسيطة:

    =COUNTIF(A2:A10, "AA-01")

    لتمكين المستخدمين من عد الخلايا بأي نص معين دون الحاجة إلى تعديل الصيغة ، أدخل نص في خلية محددة مسبقًا ، قل D1 ، وقم بتوفير مرجع الخلية:

    =COUNTIF(A2:A10, D1)

    ملاحظة. وظيفة Excel COUNTIF هي حساسة لحالة الأحرف ، مما يعني أنها لا تفرق بين حالة الأحرف. لمعالجة الأحرف الكبيرة والصغيرةبشكل مختلف ، استخدم هذه الصيغة الحساسة لحالة الأحرف.

    كيفية حساب الخلايا بنص معين (تطابق جزئي)

    تطابق الصيغة التي تمت مناقشتها في المثال السابق المعايير تمامًا. إذا كان هناك حرف واحد مختلف على الأقل في الخلية ، على سبيل المثال مسافة إضافية في النهاية ، فلن يكون ذلك مطابقًا تمامًا ولن يتم حساب هذه الخلية.

    للعثور على رقم الخلايا التي تحتوي على نص معين كجزء من محتوياتها ، استخدم أحرف البدل في المعايير الخاصة بك ، أي علامة النجمة (*) التي تمثل أي تسلسل أو أحرف. اعتمادًا على هدفك ، يمكن أن تبدو الصيغة كواحدة مما يلي.

    عد الخلايا التي تحتوي على نص محدد في بداية جدًا :

    COUNTIF (range ، " text * ")

    عد الخلايا التي تحتوي على نص معين في أي موضع :

    COUNTIF (range،" * text * ")

    على سبيل المثال ، لمعرفة عدد الخلايا في النطاق A2: A10 التي تبدأ بـ "AA" ، استخدم هذه الصيغة:

    =COUNTIF(A2:A10, "AA*")

    للحصول على عدد الخلايا التي تحتوي على "AA" في أي موضع ، استخدم هذا 1:

    =COUNTIF(A2:A10, "*AA*")

    لجعل الصيغ أكثر ديناميكية ، استبدل السلاسل المشفرة بمراجع الخلايا.

    لحساب الخلايا التي تبدأ بنص معين:

    =COUNTIF(A2:A10, D1&"*")

    لحساب عدد الخلايا التي تحتوي على نص معين في أي مكان بداخلها:

    =COUNTIF(A2:A10, "*"&D1&"*")

    توضح لقطة الشاشة أدناه النتائج:

    عد الخلايا التي تحتوي على نص معين (حساس لحالة الأحرف)

    في الحالة التي تحتاج فيها إلى التمييزالأحرف الكبيرة والصغيرة ، لن تعمل وظيفة COUNTIF. اعتمادًا على ما إذا كنت تبحث عن مطابقة تامة أو جزئية ، سيتعين عليك إنشاء صيغة مختلفة.

    صيغة حساسة لحالة الأحرف لحساب الخلايا بنص محدد (تطابق تام)

    لحساب عدد الخلايا التي تحتوي على نص معين يتعرف على حالة النص ، سنستخدم مجموعة من الدالتين SUMPRODUCT والوظائف الدقيقة:

    SUMPRODUCT (- EXACT (" text range ))

    كيف تعمل هذه الصيغة:

    • تقارن EXACT كل خلية في النطاق مقابل نص العينة وتُرجع مصفوفة من قيم TRUE و FALSE ، تمثل TRUE التطابقات التامة و FALSE جميع الخلايا الأخرى. تقوم واصلة مزدوجة (تسمى أحادي مزدوج ) بإجبار TRUE و FALSE في 1 و 0.
    • تجمع SUMPRODUCT جميع عناصر المصفوفة. هذا المجموع هو عدد 1 ، وهو عدد المطابقات.

    على سبيل المثال ، للحصول على عدد الخلايا في A2: A10 التي تحتوي على النص في D1 والتعامل مع الأحرف الكبيرة والصغيرة على أنها مختلفة الأحرف ، استخدم هذه الصيغة:

    =SUMPRODUCT(--EXACT(D1, A2:A10))

    صيغة حساسة لحالة الأحرف لحساب عدد الخلايا بنص محدد (تطابق جزئي)

    للبناء صيغة حساسة لحالة الأحرف يمكنها العثور على سلسلة نصية مهمة في أي مكان في الخلية ، نستخدم 3 وظائف مختلفة:

    SUMPRODUCT (- (ISNUMBER (FIND (" text النطاق ))))

    كيف تعمل هذه الصيغة:

    • تبحث دالة FIND الحساسة لحالة الأحرفللنص الهدف في كل خلية من خلايا النطاق. إذا نجحت ، فإن الدالة ترجع موضع الحرف الأول ، وإلا فإن الخطأ #VALUE! خطأ. من أجل الوضوح ، لا نحتاج إلى معرفة الموضع الدقيق ، فأي رقم (على عكس الخطأ) يعني أن الخلية تحتوي على النص الهدف.
    • تعالج الدالة ISNUMBER مصفوفة الأرقام والأخطاء التي تم إرجاعها بواسطة FIND وتحويل الأرقام إلى TRUE وأي شيء آخر إلى FALSE. أحادي مزدوج (-) يفرض القيم المنطقية في الآحاد والأصفار.
    • يجمع SUMPRODUCT المصفوفة المكونة من 1 و 0 ويعيد عدد الخلايا التي تحتوي على النص المحدد كجزء من محتوياتها.

    لاختبار الصيغة على بيانات الحياة الواقعية ، دعنا نجد عدد الخلايا في A2: A10 التي تحتوي على إدخال السلسلة الفرعية في D1:

    =SUMPRODUCT(--(ISNUMBER(FIND(D1, A2:A10))))

    وهذا يُرجع عددًا من 3 (الخلايا A2 و A3 و A6):

    كيفية حساب الخلايا التي تمت تصفيتها بنص محدد

    لحساب عدد العناصر المرئية في قائمة تمت تصفيتها ، ستحتاج إلى استخدام مجموعة من 4 وظائف أو أكثر بناءً على ما إذا كنت تريد مطابقة تامة أو جزئية. لتسهيل متابعة الأمثلة ، دعنا نلقي نظرة سريعة على بيانات المصدر أولاً.

    بافتراض أن لديك جدولًا به معرّفات الطلبات في العمود B و الكمية في العمود C كما هو موضح في الصورة أدناه. في الوقت الحالي ، أنت مهتم فقط بكميات أكبر من 1 وقمت بتصفية جدولك وفقًا لذلك. الالسؤال هو - كيف تحسب الخلايا التي تمت تصفيتها بمعرف معين؟ الخلايا التي تتطابق محتوياتها مع نموذج السلسلة النصية تمامًا ، استخدم إحدى الصيغ التالية:

    =SUMPRODUCT(SUBTOTAL(103, INDIRECT("A"&ROW(A2:A10))), --(B2:B10=F1))

    =SUMPRODUCT(SUBTOTAL(103, OFFSET(A2:A10, ROW(A2:A10) - MIN(ROW(A2:A10)),,1)), --(B2:B10=F1))

    حيث F1 هو نموذج النص و B2: B10 هي الخلايا للعد.

    كيف تعمل هذه الصيغ:

    في جوهر كلتا الصيغتين ، تقوم بإجراء فحصين:

    1. تحديد الصفوف المرئية والمخفية. لهذا ، يمكنك استخدام الدالة SUBTOTAL مع تعيين الوسيطة function_num إلى 103. لتوفير جميع مراجع الخلايا الفردية إلى SUBTOTAL ، استخدم إما INDIRECT (في الصيغة الأولى) أو مزيج من OFFSET و ROW و MIN (في الصيغة الثانية). نظرًا لأننا نهدف إلى تحديد موقع الصفوف المرئية والمخفية ، فلا يهم حقًا العمود الذي يجب الرجوع إليه (A في مثالنا). نتيجة هذه العملية هي مصفوفة من 1 و 0 حيث يمثل الواحد صفوفًا وأصفارًا مرئية - صفوف مخفية.
    2. ابحث عن الخلايا التي تحتوي على نص معين. لهذا ، قارن نموذج النص (F1) بنطاق الخلايا (B2: B10). نتيجة هذه العملية هي مصفوفة من قيم TRUE و FALSE ، والتي يتم فرضها على قيم 1 و 0 بمساعدة عامل التشغيل الأحادي المزدوج.

    أخيرًا ، تضاعف الدالة SUMPRODUCT عناصر الاثنين المصفوفات في نفس المواضع ، ثم تجمع المصفوفة الناتجة.نظرًا لأن الضرب في الصفر يعطي صفرًا ، فإن الخلايا التي تحتوي على 1 في كلا المصفوفتين فقط لها 1 في المصفوفة النهائية. مجموع 1 هو عدد الخلايا التي تمت تصفيتها التي تحتوي على النص المحدد.

    صيغة لحساب عدد الخلايا التي تمت تصفيتها بنص معين (مطابقة جزئية)

    لحساب الخلايا التي تمت تصفيتها التي تحتوي على نص معين كجزء من محتويات الخلية ، قم بتعديل الصيغ أعلاه بالطريقة التالية. بدلاً من مقارنة نموذج النص بنطاق الخلايا ، ابحث عن النص الهدف باستخدام ISNUMBER و FIND كما هو موضح في أحد الأمثلة السابقة:

    =SUMPRODUCT(SUBTOTAL(103, INDIRECT("A"&ROW(A2:A10))), --(ISNUMBER(FIND(F1, B2:B10))))

    =SUMPRODUCT(SUBTOTAL(103, OFFSET(A2:A10, ROW(A2:A10) - MIN(ROW(A2:A10)),,1)), --(ISNUMBER(FIND(F1, B2:B10))))

    ونتيجة لذلك ، ستحدد الصيغ موقع سلسلة نصية معينة في أي موضع في الخلية:

    ملاحظة. تحدد الدالة SUBTOTAL مع 103 في الوسيطة function_num جميع الخلايا المخفية وتصفيتها وإخفائها يدويًا. نتيجة لذلك ، تحسب الصيغ أعلاه فقط الخلايا المرئية بغض النظر عن كيفية إخفاء الخلايا غير المرئية. لاستبعاد الخلايا التي تمت تصفيتها فقط مع تضمين الخلايا المخفية يدويًا ، استخدم 3 لـ function_num .

    هذه هي طريقة حساب عدد الخلايا بنص معين في Excel. أشكرك على القراءة وآمل أن أراك على مدونتنا الأسبوع المقبل!

    التنزيلات المتاحة

    صيغ Excel لحساب عدد الخلايا بنص معين

    مايكل براون متحمس للتكنولوجيا ولديه شغف لتبسيط العمليات المعقدة باستخدام أدوات البرمجيات. مع أكثر من عشر سنوات من الخبرة في صناعة التكنولوجيا ، صقل مهاراته في Microsoft Excel و Outlook ، بالإضافة إلى جداول بيانات Google والمستندات. مدونة مايكل مكرسة لمشاركة معرفته وخبرته مع الآخرين ، وتقديم نصائح ودروس تعليمية سهلة المتابعة لتحسين الإنتاجية والكفاءة. سواء كنت محترفًا متمرسًا أو مبتدئًا ، تقدم مدونة مايكل رؤى قيمة ونصائح عملية للحصول على أقصى استفادة من أدوات البرامج الأساسية هذه.