إكسيل وتحليل البيانات, صيغ ودوال إكسيل

إكسيل: استخدام دالة SEARCH للبحث عن قيم متعددة


تُعد معالجة البيانات النصية داخل برنامج مايكروسوفت إكسيل (Microsoft Excel) إحدى أكثر الركائز تعقيداً وأهمية في تحليلات الأعمال ونمذجة البيانات المتقدمة. فعلى الرغم من أن إكسيل قد صُمم في الأصل كأداة حسابية لمعالجة الأرقام والعمليات المالية والرياضية، إلا أن الواقع العملي يفرض على محللي البيانات التعامل مع كميات هائلة من النصوص والسجلات غير المهيكلة، مثل أسماء العملاء، وأوصاف المعاملات البنكية، وتفاصيل المنتجات، وسجلات الدعم الفني، والملاحظات الميدانية.

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

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

1. مقدمة شاملة حول دالة SEARCH ومفهوم البحث عن قيم متعددة في إكسيل

1.1 التعريف الوظيفي لدالة SEARCH وأهميتها في معالجة النصوص

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

من أهم السمات الفنية التي تُميز دالة SEARCH عن نظيرتها دالة FIND هي أنها دالة غير حساسة لحالة الأحرف (Case-insensitive) عند التعامل مع النصوص المكتوبة باللغات اللاتينية؛ ما يعني أنها لا تفرق بين الحروف الكبيرة (Uppercase) والحروف الصغيرة (Lowercase)، مما يمنحها مرونة فائقة عند تنظيف السجلات النصية التي تم إدخالها بطرق غير متجانسة بواسطة مستخدمين متعددين أو عبر أنظمة برمجية مختلفة.

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

1.2 الحاجة التحليلية للبحث عن قيم نصية متعددة بالتزامن

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

إن محاولة حل هذه المسألة عبر تكرار كتابة الدوال الشرطية التقليدية مثل IF(OR(...)) يؤدي إلى بناء صيغ رياضية متضخمة ومعقدة للغاية، يصعب تصحيحها أو صيانتها وتزيد من احتمالية حدوث أخطاء بشرية. علاوة على ذلك، فإن الاعتماد على التكرار اليدوي يفتقر إلى المرونة المطلوبة عند تحديث قوائم الكلمات المفتاحية أو الرغبة في توسيع نطاق البحث ليشمل مئات المعايير النصية الجديدة.

من هنا تنبع الضرورة التقنية لتطوير واستخدام حلول مصفوفية مدمجة (Array Solutions) تمكن المعالج الحسابي لإكسيل من مطابقة السجل النصي الواحد مع قائمة كاملة من الكلمات المفتاحية في خطوة تقييم رياضية واحدة، وهو ما يسهم بشكل مباشر في رفع كفاءة الحوسبة، وتقليل استهلاك الذاكرة، وتسريع استخراج المؤشرات والأنماط المعقدة من قواعد البيانات غير المهيكلة.

2. البنية النحوية والرياضية لدالة SEARCH ومحدداتها الفنية

2.1 المعاملات الإلزامية والاختيارية لدالة SEARCH

تتكون البنية النحوية (Syntax) لدالة SEARCH في إكسيل من ثلاثة معاملات رئيسية، اثنان منها إلزاميان وثالث اختياري، وتُكتب الصيغة الرياضية للدالة على النحو التالي:

=SEARCH(find_text, within_text, [start_num])

يقوم المعامل الإلزامي الأول find_text بتحديد السلسلة النصية أو المحرف المراد البحث عنه. أما المعامل الإلزامي الثاني within_text فيشير إلى السلسلة النصية الشاملة أو مرجع الخلية التي يُراد إجراء عملية الفحص والبحث بداخلها. والمعامل الثالث الاختياري start_num يحدد رقم المحرف الذي تبدأ من عنده عملية البحث داخل النص الكلي، وإذا تم إغفاله تفترض الدالة تلقائياً أن نقطة البداية هي المحرف الأول (أي القيمة 1).

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

2.2 سلوك الدالة عند عدم العثور على القيمة المحددة

أحد أهم المحددات الفنية لدالة SEARCH هو سلوكها الرياضي عند فشل عملية البحث وعدم العثور على القيمة المحددة في find_text داخل السلسلة النصية within_text. في هذه الحالة، لا تُرجع الدالة القيمة صفر أو نصاً فارغاً، بل تقوم بتوليد خطأ القيمة الشهير #VALUE!.

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

2.3 استخدام الرموز البديلة (Wildcards) مع دالة SEARCH

تتميز دالة SEARCH بدعمها الأصيل للرموز البديلة أو أحرف البدل (Wildcard Characters)، وهي أدوات فعالة تتيح للمحلل إجراء عمليات بحث نصية مرنة تعتمد على الأنماط العامة وليس على التطابق الحرفي التام. تتضمن هذه الأدوات علامة الاستفهام (?) والنجمة (*)، ولكل منهما استخدام وظيفي محدد بدقة داخل بيئة إكسيل.

تُستخدم علامة الاستفهام (?) لتمثيل أي محرف فردي واحد في موضع محدد؛ فعلى سبيل المثال، يطابق نمط البحث "b?ll" كلمات مثل “ball” و “bill” و “bell”. بينما تُستخدم علامة النجمة (*) لتمثيل أي عدد عشوائي من المحارف المتتالية (بما في ذلك عدم وجود أي محرف)؛ وبالتالي فإن نمط البحث "east*sales" يطابق أي سلسلة نصية تبدأ بكلمة “east” وتنتهي بكلمة “sales” بغض النظر عن الكلمات أو الفواصل الواقعة بينهما.

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

3. آلية عمل الصيغة المجمعة: دمج SEARCH مع ISNUMBER و SUMPRODUCT

3.1 التشريح الدقيق لصيغة البحث عن قيم متعددة

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

=SUMPRODUCT(--ISNUMBER(SEARCH({"string1","string2","string3"}, A2))) > 0

تبدأ هذه الآلية بتمرير مصفوفة ثوابت نصية محاطة بأقواس معقوفة {"string1", "string2", "string3"} إلى المعامل find_text بدلاً من تمرير قيمة نصية مفردة. عندما يستقبل محرك حسابات إكسيل هذه المصفوفة، فإنه ينفذ عملية تفكيك ومطابقة متعددة، حيث يقوم بفحص الخلية المستهدفة A2 مقابل كل عنصر في مصفوفة البحث بشكل مستقل ومتزامن.

ينتج عن هذه الخطوة الأولى مصفوفة مخرجات تحتوي على أرقام صحيحة تمثل مواضع الكلمات التي تم العثور عليها بالفعل داخل النص، وأخطاء #VALUE! لكل كلمة من الكلمات التي لم يتم العثور عليها؛ فإذا احتوت الخلية على الكلمة الأولى وفقدت الكلمتين الثانية والثالثة، ستكون مصفوفة المخرجات الناتجة عن دالة SEARCH بالشكل: {15, #VALUE!, #VALUE!}.

3.2 الدور المحوري لدالة ISNUMBER في المعالجة المنطقية

تتدخل دالة ISNUMBER في المرحلة الثانية من المعالجة الرياضية لتلعب دور المرشح المنطقي والمطهر البرمجي لمصفوفة النتائج المشوهة بالأخطاء. تستقبل دالة ISNUMBER المصفوفة السابقة وتقوم باختبار نوع كل عنصر بداخلها على حدة.

تقوم الدالة بتحويل أي قيمة رقمية صحيحة ناتجة عن نجاح البحث إلى القيمة المنطقية TRUE، في حين تقوم بتحويل أي خطأ، بما في ذلك أخطاء #VALUE! الناتجة عن فشل العثور على الكلمات، إلى القيمة المنطقية FALSE. بالاستناد إلى المثال السابق، تتحول المصفوفة {15, #VALUE!, #VALUE!} بعد تطبيق دالة ISNUMBER إلى مصفوفة منطقية نقية وخالية تماماً من الأخطاء: {TRUE, FALSE, FALSE}.

3.3 وظيفة المعامل الثنائي السالب المزدوج (Double Unary Operator –)

رغم أن المصفوفة المنطقية الناتجة عن دالة ISNUMBER تعكس بدقة حالة تواجد الكلمات، إلا أن الدوال الحسابية والجمعية في إكسيل لا تستطيع إجراء عمليات الجمع الرياضي المباشر على القيم المنطقية النصية (TRUE و FALSE) ما لم يتم تحويلها صراحة إلى قيم رقمية مكافئة.

هنا يأتي الدور المحوري للمعامل الثنائي السالب المزدوج (Double Unary)، والمكتوب بصيغة شرطتين متتاليتين (--). يقوم السالب الأول بتحويل القيمة المنطقية TRUE إلى الرقم السلبي -1 والقيمة FALSE إلى الرقم 0، ثم يقوم السالب الثاني بعكس الإشارة الجبرية لتحويل -1 إلى القيمة الرقمية الموجبة 1 مع الإبقاء على الصفر كما هو. بذلك، تتحول المصفوفة المنطقية {TRUE, FALSE, FALSE} جبرياً إلى مصفوفة ثنائية عددية: {1, 0, 0} جاهزة للعمليات التجميعية.

3.4 التجميع النهائي عبر دالة SUMPRODUCT والتقييم الشرطي

تعد دالة SUMPRODUCT القلب النابض لهذه الصيغة المركبة، وتكمن ميزتها الاستثنائية في قدرتها على معالجة وحساب مصفوفات البيانات دون الحاجة إلى إدخال الصيغة بصيغة صفيف تقليدية معقدة تتطلب الضغط على Ctrl + Shift + Enter في الإصدارات القديمة من إكسيل.

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

في المرحلة الختامية، تتم مقارنة ناتج SUMPRODUCT مع الصفر باستخدام المعامل الشرطي > 0. إذا كان ناتج الجمع أكبر من صفر، تُرجع الصيغة الكلية القيمة المنطقية النهائية TRUE (مما يشير إلى أن الخلية تحتوي على واحدة على الأقل من الكلمات المفتاحية المستهدفة)، وإذا كان الناتج مساوياً للصفر، تُرجع الصيغة القيمة FALSE.

4. تطبيق عملي خطوة بخطوة: البحث عن سلاسل نصية متعددة

4.1 إعداد نموذج البيانات وتحديد الكلمات المفتاحية

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

الهدف التحليلي هو فحص كل خلية في هذا العمود للتحقق مما إذا كانت تحتوي على أي اسم من أسماء الفرق الثلاثة التالية: Pacers أو Raptors أو Nuggets. يتم تخصيص العمود B لعرض النتيجة المنطقية لعملية الفحص التي ستبين ما إذا كان السجل النصي يتضمن أياً من هذه الكلمات المستهدفة، مما يمهد لتصنيف البيانات لاحقاً.

4.2 كتابة الصيغة وتعميمها على كامل النطاق

لتنفيذ عملية البحث المتعدد، يتم الانتقال إلى الخلية B2 وإدخال الصيغة المركبة التالية بدقة:

=SUMPRODUCT(--ISNUMBER(SEARCH({"Pacers","Raptors","Nuggets"}, A2))) > 0

بعد إدخال الصيغة والضغط على مفتاح Enter، يتم استخدام مقبض التعبئة التلقائية (Fill Handle) لسحب الصيغة وتعميمها رأسياً على كافة خلايا العمود B حتى الخلية B10. سيلاحظ المحلل على الفور استجابة إكسيل الحسابية التلقائية وتوليد قيم منطقية تعكس محتوى كل صف على حدة.

4.3 تحليل حالات المطابقة المختلفة داخل الجدول

عند تدقيق النتائج المرجعة في العمود B، يمكن استعراض ثلاثة سيناريوهات متباينة توضح السلوك الحسابي للصيغة عبر مختلف السجلات النصية:

  • الحالة الأولى: مطابقة أحادية – إذا كانت الخلية A2 تحتوي على النص “The Indiana Pacers secured a vital victory yesterday”، فإن دالة SEARCH ستعثر على كلمة “Pacers” وتفشل في البقية، فتتحول المصفوفة إلى {1, 0, 0}، ويُرجع SUMPRODUCT القيمة 1، وبما أن 1 > 0، تصبح النتيجة النهائية TRUE.
  • الحالة الثانية: مطابقة متعددة – إذا كانت الخلية A3 تحتوي على النص “Historic match between Raptors and Nuggets”، فإن دالة SEARCH ستعثر على كلمتين، فتتحول المصفوفة إلى {0, 1, 1}، ويُرجع SUMPRODUCT القيمة 2، وبما أن 2 > 0، تُرجع الصيغة أيضاً TRUE.
  • الحالة الثالثة: انعدام المطابقة – إذا كانت الخلية A4 تحتوي على النص “The Boston Celtics dominated the entire game”، فإن جميع محاولات البحث ستفشل، فتكون المصفوفة {0, 0, 0}، ويُرجع SUMPRODUCT القيمة صفر، وبالتالي تصبح النتيجة النهائية FALSE.

5. التعامل مع حساسية حالة الأحرف: مقارنة دالة SEARCH بدالة FIND

5.1 الفروق الجوهرية بين دالتي SEARCH و FIND

في العديد من التحليلات المتقدمة للنصوص اللاتينية، تفرض متطلبات العمل أحياناً التمييز الصارم بين الأحرف الكبيرة والصغيرة، لا سيما عند التعامل مع الرموز البرمجية، أو الاختصارات المالية، أو معرفات المنتجات المعيارية (SKUs). هنا يبرز الفارق الهندسي الأساسي بين دالة SEARCH ودالة FIND.

تتميز دالة FIND بكونها دالة حساسة لحالة الأحرف (Case-sensitive) بشكل صارم، بالإضافة إلى عدم دعمها لاستخدام الرموز البديلة (Wildcards). في المقابل، تتجاهل دالة SEARCH حالة الأحرف تماماً وتدعم أحرف البدل. ويوضح الجدول التالي مقارنة تفصيلية بين الخصائص الفنية للدالتين:

وجه المقارنة دالة SEARCH دالة FIND
حساسية حالة الأحرف غير حساسة (تتجاهل الفروق بين A و a) حساسة تماماً (تفرق بدقة بين A و a)
دعم الرموز البديلة (Wildcards) تدعم (مثل * و ?) لا تدعم إطلاقاً
سلوك الخطأ عند الفشل تُرجع خطأ #VALUE! تُرجع خطأ #VALUE!
طبيعة المخرجات الرقمية الموضع النسبي للمحرف الأول الموضع النسبي للمحرف الأول

5.2 بناء صيغة البحث المتعدد الحساسة لحالة الأحرف

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

تُكتب الصيغة المعدلة الحساسة لحالة الأحرف على النحو التالي:

=SUMPRODUCT(--ISNUMBER(FIND({"USA","UK","KSA"}, A2))) > 0

في هذا النموذج، إذا احتوت الخلية A2 على النص “usa economy report” (بحروف صغيرة)، فإن الدالة ستفشل في العثور على الاختصار "USA" المكتوب بحروف كبيرة، وستُرجع الصيغة FALSE. بينما لن تتحقق النتيجة TRUE إلا إذا كان النص يتضمن الاختصار "USA" بنفس بنية الأحرف الكبيرة المحددة في مصفوفة الثوابت، وهو ما يضمن دقة تصنيف الاختصارات والرموز التقنية وتجنب الخلط مع الكلمات العامة المتشابهة.

5.3 معايير الاختيار بين الدالتين في البيئات التحليلية

يعتمد الاختيار بين SEARCH و FIND على طبيعة وجودة البيانات المستهدفة في المقام الأول. في حالات استعراض استطلاعات الرأي، وملاحظات العملاء، والتغريدات، والنصوص الحرة، يوصى دائماً باستخدام دالة SEARCH لأن المستخدمين نادراً ما يلتزمون بقواعد الكتابة وحالة الأحرف، وبالتالي فإن استخدام دالة مرنة يضمن تقليل النتائج السلبية الكاذبة (False Negatives).

في المقابل، عند معالجة الأكواد البرمجية، أو الرموز الجزيئية في الكيمياء، أو أكواد الشحن والتعريف الجمركي الدولية التي تفرق بين الحرف الكبير والصغير في دلالة المعنى، يصبح استخدام FIND إلزامياً لتجنب المطابقات الإيجابية الزائفة (False Positives). وكأفضل ممارسة منهجية، يُفضل دائماً تنظيف وتوحيد النصوص مسبقاً باستخدام دوال مثل UPPER أو LOWER أو PROPER عند الرغبة في توحيد بيئة القياس قبل الشروع في بناء مصفوفات البحث النصي.

6. استخدام مصفوفة الخلايا الديناميكية ومراجع النطاقات بدلاً من الثوابت

6.1 التحول من الثوابت المضمنة إلى مراجع النطاقات المرنة

على الرغم من فاعلية تضمين الكلمات المفتاحية مباشرة كقيم نصية ثابتة محاطة بأقواس معقوفة داخل الصيغة {"word1", "word2"}، إلا أن هذه الطريقة، المعروفة تقنياً بـ (Hardcoding)، تنطوي على عيوب هيكلية واضحة من منظور هندسة البيانات وقابليتها للصيانة والتطوير.

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

=SUMPRODUCT(--ISNUMBER(SEARCH($E$2:$E$4, A2))) > 0

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

6.2 استغلال محرك المصفوفات الديناميكية (Dynamic Arrays) في Excel 365

مع إطلاق محرك الحسابات المتقدم القائم على المصفوفات الديناميكية (Dynamic Array Engine) في إصدارات Microsoft 365 و Excel 2021 الحديثة، شهدت صيغ البحث النصي ثورة تقنية جعلتها أكثر بساطة وأسرع تنفيذاً مقارنة بصيغ SUMPRODUCT التقليدية.

في هذه البيئات الحديثة، يمكن الاستغناء عن التحويل الثنائي المعقد واستخدام دالة المنطق OR بالتكامل مع دالة ISNUMBER و SEARCH مباشرة عبر كتابة صيغ مصفوفية مرنة مثل:

=OR(ISNUMBER(SEARCH($E$2:$E$4, A2)))

كما يمكن توظيف دوال مسح المصفوفات المتقدمة مثل دالة BYROW مع دوال LAMBDA لتطبيق البحث المتعدد على عمود كامل بضربة واحدة وإرجاع النتائج عبر ميزة التدفق التلقائي (Spill) دون الحاجة لسحب الصيغة يدوياً، مثل الصيغة التالية:

=BYROW(A2:A100, LAMBDA(row, OR(ISNUMBER(SEARCH(KeywordsList, row)))))

6.3 إدارة وتحديث قوائم البحث المتغيرة تلقائياً

لتحقيق أقصى درجات الأتمتة الإدارية لمعايير البحث، يُنصح بتحويل نطاق الكلمات المفتاحية إلى جدول إكسيل رسمي (Excel Table) بالضغط على Ctrl + T وتسميته باسم وصفي ملائم مثل tbl_Keywords مع تسمية العمود الرئيسي بـ Keyword.

عند الاعتماد على الجداول الرسمية، تتحول مراجع الصيغ إلى مراجع مهيكلة (Structured References) تقرأ على النحو التالي:

=SUMPRODUCT(--ISNUMBER(SEARCH(tbl_Keywords[Keyword], A2))) > 0

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

7. تخصيص المخرجات واستخراج النصوص بدلاً من القيم المنطقية

7.1 دمج دالة IF لتوليد رسائل وتصنيفات نصية مخصصة

في معظم لوحات المعلومات والتقارير الإدارية، لا يفضل أصحاب المصلحة رؤية القيم المنطقية المجردة مثل TRUE و FALSE، بل يتطلعون إلى قراءة تصنيفات دلالية واضحة تسهم في سرعة اتخاذ القرار وفرز الأعمال.

لتحقيق ذلك، يتم تغليف صيغة البحث بالكامل داخل دالة IF الشرطية، حيث يوضع تعبير البحث كمعامل أول (الاختبار المنطقي)، ويتم تخصيص المخرجات النصية المرغوبة في المعاملين الثاني والثالث على النحو التالي:

=IF(SUMPRODUCT(--ISNUMBER(SEARCH($E$2:$E$4, A2))) > 0, "مستهدف / مطابق", "غير مطابق")

يمكن أيضاً بناء شروط متداخلة (Nested IF) لتقييم مستويات المطابقة بناءً على القيمة الرقمية الإجمالية الناتجة عن SUMPRODUCT؛ فإذا كان الناتج 1 يُكتب “تطابق مفرد”، وإذا كان أكبر من 1 يُكتب “تطابق متعدد”، وإذا كان صفراً يُكتب “لا يوجد تطابق”.

7.2 استخراج القيمة المطابقة الفعلية من النص المستهدف

يتجاوز التحليل النصي المتقدم مجرد التحقق من وجود الكلمات إلى الرغبة في معرفة الكلمة المحددة التي تم العثور عليها واستخراجها كنص مستقل في عمود مخصص. لتحقيق هذه الوظيفة، يتم دمج دالة INDEX ودالة MATCH مع دالة ISNUMBER(SEARCH(...)) على النحو التالي:

=INDEX($E$2:$E$4, MATCH(TRUE, ISNUMBER(SEARCH($E$2:$E$4, A2)), 0))

تعمل دالة SEARCH هنا على فحص الخلية A2 مقابل نطاق الكلمات E2:E4، ثم تحول ISNUMBER النتيجة إلى مصفوفة قيم منطقية. تبحث دالة MATCH عن أول ظهور للقيمة TRUE داخل تلك المصفوفة وتُرجع رقم صفها، ثم تقوم دالة INDEX بجلب النص الفعلي المقابل لذلك الصف من قائمة الكلمات الأصلية.

كما يمكن لمستخدمي الإصدارات الحديثة توظيف دالة XLOOKUP بمرونة فائقة للوصول لنفس النتيجة بكفاءة تعبيرية أعلى:

=XLOOKUP(TRUE, ISNUMBER(SEARCH($E$2:$E$4, A2)), $E$2:$E$4, "غير موجود", 0)

7.3 تجميع وإرجاع كافة الكلمات المتطابقة في خلية واحدة

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

تُكتب الصيغة التجميعية المتقدمة بالشكل التالي:

=TEXTJOIN(" - ", TRUE, FILTER($E$2:$E$4, ISNUMBER(SEARCH($E$2:$E$4, A2)), "لا توجد مطابقات"))

تقوم دالة FILTER في هذه الصيغة بتصفية نطاق الكلمات E2:E4 وإرجاع الكلمات التي حققت شرط المطابقة فقط، ثم تتولى دالة TEXTJOIN دمج هذه الكلمات المستخرجة في خلية واحدة وفصلها بشرطة ومسافات " - " مع تجاهل الخلايا الفارغة، مما يوفر ملخصاً تحليلياً شاملاً لمحتويات السجل النصي.

8. تطبيق دالة SEARCH مع القيم المتعددة في التنسيق الشرطي

8.1 إنشاء قواعد التنسيق الشرطي القائمة على الصيغ المخصصة

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

لتطبيق هذه القاعدة، يتبع المحلل الخطوات المنهجية التالية:

  • تحديد نطاق البيانات المراد تلوينه بالكامل، وليكن A2:C100.
  • الانتقال إلى تبويب الصفحة الرئيسية (Home)، ثم النقر على التنسيق الشرطي (Conditional Formatting) واختيار قاعدة جديدة (New Rule).
  • اختيار الخيار الأخير: استخدام صيغة لتحديد الخلايا التي سيتم تنسيقها (Use a formula to determine which cells to format).
  • إدخال صيغة البحث المتعدد مع الانتباه الدقيق لتثبيت مراجع الأعمدة، على النحو التالي:

=SUMPRODUCT(--ISNUMBER(SEARCH($E$2:$E$4, $A2))) > 0

8.2 التمييز البصري التلقائي للسجلات المطابقة لقائمة الكلمات

عند ضبط الصيغة السابقة، يمثل وضع علامة الدولار قبل الحرف $A2 تثبيتاً مطلقاً للعمود A مع ترك رقم الصف 2 متغيراً ونسبياً. يضمن هذا التثبيت المرجعي أن يقوم محرك التنسيق الشرطي بفحص محتوى العمود A في كل صف، ولكنه يطبق التنسيق اللوني على كافة خلايا الصف الممتدة عبر الأعمدة A و B و C معاً.

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

8.3 تحسين أداء التنسيق الشرطي مع قواعد البيانات الواسعة

على الرغم من القوة البصرية للتنسيق الشرطي المعتمد على الصيغ المصفوفية، إلا أن الإفراط في تطبيقه على جداول بيانات تحتوي على عشرات الآلاف من الصفوف قد يؤدي إلى استهلاك كبير لموارد المعالجة وتراجع سرعة استجابة ورقة العمل أثناء التمرير أو التعديل؛ ويرجع ذلك إلى أن صيغ التنسيق الشرطي هي صيغ متطايرة ومتقلبة (Volatile) تتم إعادة حسابها مع كل حركة أو إعادة رسم للشاشة.

لتحسين الأداء وضمان سلاسة العمل، يُوصى بإنشاء عمود مساعد (Helper Column) في جدول البيانات الأساسي يحتوي على صيغة SUMPRODUCT لحساب التطابق مسبقاً وتخزين القيمة TRUE أو FALSE، ثم ضبط قاعدة التنسيق الشرطي لتقرأ مباشرة من هذا العمود المساعد البسيط بالصيغة: =$D2=TRUE، مما ينقل العبء الحسابي من محرك الرسوميات والتنسيق الشرطي إلى محرك الحسابات الرئيسي المستقر.

9. معالجة الأخطاء الشائعة واستكشاف المشكلات الفنية وإصلاحها

9.1 التعامل مع الخلايا الفارغة والمراجع غير الصحيحة

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

يترتب على ذلك أن وجود خلية فارغة واحدة فقط داخل نطاق معايير البحث $E$2:$E$10 سيجعل الدالة تُرجع القيمة TRUE لكافة صفوف وسجلات الجدول بدون استثناء، مما يُبطل فاعلية عملية التحليل بالكامل. لتفادي هذا السلوك غير المرغوب، يجب تعديل الصيغة لتصفية واستبعاد الخلايا الفارغة برمجياً عبر التحقق المنطقي المسبق:

=SUMPRODUCT(--ISNUMBER(SEARCH(IF($E$2:$E$10"", $E$2:$E$10, "§§§"), A2))) > 0

في هذه الصيغة المعدلة، تستبدل دالة IF أي خلية فارغة في نطاق البحث برمز غير مألوف يستحيل وجوده في النص الأصلي (مثل §§§)، مما يضمن عدم حدوث أي تطابق زائف ناتج عن الفراغات.

9.2 مشكلة المطابقات الجزئية غير المقصودة والكلمات المتداخلة

نظراً لأن دالة SEARCH تبحث عن مطابقة النصوص الفرعية أينما وجدت، فإنها لا تفرق تلقائياً بين الكلمات الكاملة المستقلة والمقاطع الحرفية المتداخلة ضمن كلمات أخرى أطول؛ فعلى سبيل المثال، إذا كانت كلمة البحث المستهدفة هي “cat”، فإن الصيغة ستُرجع تطابقاً إيجابياً TRUE إذا احتوى النص على كلمات مثل “caterpillar” أو “certificate” أو “location”، وهو ما يعرف في علم تنقيب البيانات بظاهرة الإيجابيات الكاذبة (False Positives).

لضمان مطابقة الكلمات الكاملة بدقة والحد من المطابقات الجزئية المتداخلة، يتم تطبيق تقنية التضمين بالمسافات (Space Padding). تعتمد هذه التقنية على إضافة مسافة بادئة ولاحقة لكل من نص البحث والنص المستهدف داخل الصيغة على النحو التالي:

=SUMPRODUCT(--ISNUMBER(SEARCH(" " & $E$2:$E$4 & " ", " " & A2 & " "))) > 0

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

9.3 أخطاء التنسيق وتأثير المسافات غير المرئية

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

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

=SUMPRODUCT(--ISNUMBER(SEARCH(TRIM($E$2:$E$4), TRIM(CLEAN(A2))))) > 0

10. مقارنة الأداء والكفاءة الحاسوبية في مجموعات البيانات الضخمة

10.1 الاستهلاك الحسابي لدالة SUMPRODUCT مع مصفوفات النصوص

من الناحية الهندسية الحاسوبية، تتميز العمليات المصفوفية النصية بارتفاع درجة تعقيدها الحسابي واستهلاكها المكثف للذاكرة والمعالج؛ فعند تطبيق صيغة SUMPRODUCT مع SEARCH على جدول بيانات يحتوي على 50,000 صف نصي مقابل قائمة معايير بحث تحتوي على 50 كلمة مفتاحية، فإن إكسيل يقوم بتنفيذ 2,500,000 عملية بحث نصي فردية ومقارنة مصفوفية متزامنة.

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

10.2 مقارنة كفاءة صيغة SEARCH مع الحلول البديلة

تختلف كفاءة أدوات إكسيل لمعالجة النصوص بناءً على حجم البيانات وبنية النموذج الحسابي؛ ويوضح الجدول التالي تحليلاً مقارناً بين الحلول المتاحة من حيث السرعة والتعقيد وإمكانية التوسع:

التقنية المستخدمة السرعة في البيانات الضخمة سهولة التطبيق والصيانة الاستخدام الموصى به
SUMPRODUCT + SEARCH متوسطة إلى منخفضة مع النصوص الطويلة مرتفعة ولا تتطلب إعدادات برمجية الجداول الصغيرة والمتوسطة (أقل من 20,000 صف)
Dynamic Arrays (BYROW/OR) أسرع بنسبة 20-30% بفضل تحسين الذاكرة تتطلب إصدارات Microsoft 365 الحديثة المصنفات الحديثة ذات الأحجام المتوسطة
Power Query (M Language) فائقة السرعة وقابلة للتوسع الحسابي تتطلب بناء نموذج استعلام وتحديث منفصل مجموعات البيانات الضخمة (مئات الآلاف من الصفوف)
دوال Regex الحديثة ممتازة ومحسنة لمعالجة الأنماط المعقدة تتطلب معرفة بصيغ التعبيرات النمطية الاستخراج والتصنيف النصي عالي التعقيد

10.3 أفضل الممارسات لتقليل زمن الحساب داخل المصنف

للحفاظ على كفاءة واستقرار مصنفات إكسيل عند إجراء تحليلات نصية واسعة النطاق، يوصى باتباع مجموعة من الممارسات الهندسية المثبتة:

  • تجميد الصيغ وتحويلها إلى قيم ثابتة (Paste Values): بمجرد الانتهاء من تصنيف وفحص السجلات التاريخية الثابتة التي لن يطرأ عليها تعديل، يتم نسخ عمود النتائج ولصقه كقيم للتخلص من استهلاك الصيغ المستمر لموارد المعالج.
  • ضبط خيارات الحساب إلى الحساب اليدوي (Manual Calculation): الانتقال إلى تبويب صيغ (Formulas) ثم خيارات الحساب (Calculation Options) واختيار يدوي لتجنب إعادة الحساب التلقائي المستمر مع كل إدخال، والاعتماد على الضغط على مفتاح F9 لتحديث الحسابات عند الحاجة فقط.
  • تقليص نطاقات البحث: تجنب استخدام مراجع الأعمدة الكاملة مثل A:A أو E:E في الصيغ المصفوفية، والاعتماد دائماً على نطاقات محددة بدقة أو جداول مهيكلة لمنع إكسيل من مسح ملايين الخلايا الفارغة غير المستخدمة.

11. تقنيات متقدمة وبدائل حديثة للبحث عن قيم متعددة في إكسيل

11.1 استخدام دوال التعبيرات النمطية (Regex) في إصدارات إكسيل الأحدث

يمثل إدراج دوال التعبيرات النمطية الرسمية (Regular Expressions) في التحديثات الحديثة لمايكروسوفت 365 نقلة نوعية في معالجة وتحليل النصوص داخل إكسيل. تأتي في مقدمة هذه الدوال دالة REGEXTEST ودالة REGEXEXTRACT.

تتيح دالة REGEXTEST إجراء بحث متعدد فائق المرونة عن قيم نصية متعددة باستخدام المعامل المنطقي البديل (|) الذي يعبر عن الشرط “أو” (OR) ضمن نمط نصي واحد متكامل، دون الحاجة لأي مصفوفات أو دوال تجميعية مساعدة:

=REGEXTEST(A2, "Pacers|Raptors|Nuggets", 1)

حيث يمثل الرقم 1 في المعامل الثالث خيار تجاهل حالة الأحرف (Case-insensitive). تقوم هذه الدالة بإرجاع القيمة TRUE مباشرة في حال تحقق وجود أي من الكلمات المذكورة، وبسرعة معالجة تفوق الصيغ المصفوفية التقليدية بفضل تحسين خوارزميات Regex البرمجية داخل نواة إكسيل.

11.2 توظيف Power Query لتحقيق بحث نصي متقدم ومتعدد القيم

بالنسبة لمشاريع ذكاء الأعمال والبيانات الضخمة التي تتجاوز قدرة ورقة العمل الاستيعابية، يمثل استخدام أداة Power Query ولغة الاستعلامات M الحل الهندسي الأمثل لإجراء عمليات الفحص النصي والبحث المتعدد أثناء مرحلة استخراج وتحويل وتحميل البيانات (ETL).

يمكن بناء عمود مخصص في Power Query يفحص النصوص باستخدام دالة List.AnyTrue مع دالة List.Transform و Text.Contains على النحو التالي:

List.AnyTrue(List.Transform(KeywordsList, each Text.Contains([Description], _, Comparer.OrdinalIgnoreCase)))

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

11.3 البحث متعدد القيم باستخدام دالتي FILTER و COUNTIF

من الأساليب البديلة الفعالة في بيئات التحليل الحديثة أيضاً، دمج دالة FILTER مع دوال العد الشرطي COUNTIF لتصفية السجلات النصية المستهدفة وعرضها مباشرة في نطاق تدفق جديد ومستقل.

تُصاغ المعادلة باستخدام أحرف البدل المحيطة بكلمات البحث على النحو التالي:

=FILTER(A2:B100, ISNUMBER(MATCH(A2:A100, "*" & KeywordsList & "*", 0)), "لا توجد نتائج")

أو باستخدام دالة COUNTIF مع المصفوفات:

=FILTER(A2:B100, BYROW(A2:A100, LAMBDA(r, SUM(COUNTIF(r, "*" & KeywordsList & "*")) > 0)))

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

12. أفضل الممارسات المنهجية لتنظيم وتدقيق صيغ البحث المتعدد

12.1 التوثيق البرمجي والمنهجي داخل أوراق العمل

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

يُوصى بتوظيف دالة LET لتسمية المتغيرات وتبسيط قراءة وتفكيك الصيغ المعقدة:

=LET(
    TargetText, A2,
    SearchList, $E$2:$E$4,
    MatchMatrix, ISNUMBER(SEARCH(SearchList, TargetText)),
    IsFound, SUMPRODUCT(--MatchMatrix) > 0,
    IF(IsFound, "مطابق", "غير مطابق")
)

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

12.2 إجراءات تدقيق ومراجعة صحة الحسابات (Formula Auditing)

قبل اعتماد ونشر النماذج التحليلية التي تعتمد على البحث النصي المتعدد، يجب إجراء عمليات تدقيق صارمة للتحقق من سلامة البنية الحسابية وخلوها من الأخطاء المنطقية. يوفر إكسيل أداة قوية تعرف بـ تقييم الصيغة (Evaluate Formula) تقع ضمن تبويب صيغ (Formulas).

تتيح هذه الأداة للمحلل استعراض خطوات تنفيذ الصيغة خطوة بخطوة، ورؤية كيفية توسع مصفوفة SEARCH، وكيفية تعامل ISNUMBER مع الأخطاء، وكيفية إجراء التحويل الثنائي بواسطة المعامل -- وصولاً إلى الناتج النهائي لـ SUMPRODUCT. كما يجب اختبار حالات الحافة (Edge Cases) مثل فحص الخلايا التي تحتوي على نصوص فارغة، أو محارف خاصة، أو كلمات متشابهة، للتأكد من عدم توليد نتائج إيجابية أو سلبية كاذبة.

12.3 إرشادات الحوكمة وضمان سلامة البيانات

لضمان حماية النماذج التحليلية المعقدة من التعديلات غير المقصودة التي قد يقوم بها المستخدمون النهائيون، يجب تطبيق إجراءات حوكمة صارمة لحماية المصنف تشمل:

  • قفل خلايا الصيغ وحمايتها (Locking & Protecting Cells): تحديد الخلايا التي تحتوي على صيغ البحث المتعدد وتأمينها عبر تفعيل خيار حماية ورقة العمل (Protect Sheet)، مع السماح للمستخدمين بتعديل خلايا إدخال البيانات ونطاقات كلمات البحث المخصصة فقط.
  • التحقق من صحة البيانات (Data Validation): تطبيق قواعد التحقق من صحة المدخلات على نطاق الكلمات المفتاحية لمنع إدخال نصوص فارغة، أو مسافات غير مقصودة، أو تكرار نفس الكلمات، مما يضمن نظافة معايير البحث واستقرار المخرجات الرياضية.
  • فصل طبقات النموذج التحليلي: عزل جداول البيانات الخام، ونطاقات المعايير والثوابت، ولوحات التقارير والعرض في أوراق عمل منفصلة ذات تسميات معيارية واضحة لضمان سهولة الإدارة واستدامة النموذج على المدى الطويل.

خاتمة

يمثل إتقان استخدام دالة SEARCH للبحث عن قيم متعددة نقلة نوعية في قدرة محللي البيانات على استخلاص الأنماط وتصنيف النصوص المعقدة وغير المهيكلة داخل بيئة مايكروسوفت إكسيل. فمن خلال الدمج الرياضي والمنطقي المحكم بين دالة SEARCH، ودالة ISNUMBER، والمعامل الثنائي السالب المزدوج (--)، ودالة SUMPRODUCT، يمكن تحويل العمليات الحسابية النصية الفردية البسيطة إلى مصفوفات فحص متزامنة وشاملة تتسم بالمرونة العالية والكفاءة الحسابية.

مع استمرار تطور محرك حسابات إكسيل وظهور دوال المصفوفات الديناميكية الحديثة ودوال التعبيرات النمطية (Regex) وتقنيات Power Query، بات لدى المحلل ترسانة متكاملة من الحلول المتنوعة التي تتناسب مع مختلف أحجام البيانات ومستويات التعقيد التحليلي. إن الفهم العميق للبنية الهيكلية لهذه الدوال، والالتزام بأفضل الممارسات المنهجية في تنظيف البيانات والتوثيق والتدقيق، يضمن بناء نماذج تحليلية قوية وقابلة للتطوير تقدم رؤى دقيقة تدعم صناعة القرار بكفاءة واقتدار.

المراجع (References)

اقتباس هذا المقال

looti, M. (2026, سبتمبر 2). إكسيل: استخدام دالة SEARCH للبحث عن قيم متعددة. عرب سايكلوجي. https://arabpsychology.com/excel-use-search-function-multiple-values/
looti, Mohammed. “إكسيل: استخدام دالة SEARCH للبحث عن قيم متعددة.” عرب سايكلوجي, 2 سبتمبر 2026, https://arabpsychology.com/excel-use-search-function-multiple-values/.
looti, Mohammed. “إكسيل: استخدام دالة SEARCH للبحث عن قيم متعددة.” عرب سايكلوجي. سبتمبر 2, 2026. https://arabpsychology.com/excel-use-search-function-multiple-values/.