إكسل: كيفية استخراج رقم عشري من سلسلة نصية

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

Mohammed looti أكاديمي وباحث متخصص في علم النفس
تاريخ النشر
تمت المراجعة العلمية · د. مروة عبد العظيم · 23 أكتوبر، 2026
مراجعة وتدقيق علمي معتمد تاريخ التدقيق: 23 أكتوبر، 2026
د. مروة عبد العظيم دكتوراه في علم النفس
عضو هيئة التدريس • جامعة كربلاء
معايير التدقيق والاعتماد السريري

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

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

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

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

1. مقدمة منهجية حول معالجة السلاسل النصية واستخراج الأرقام العشرية في إكسل

1.1 طبيعة البيانات النصية الهجينة وأهمية استخلاص القيم الرقمية

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

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

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

1.2 الفوارق التقنية بين استخراج الأعداد الصحيحة والأرقام العشرية

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

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

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

1.3 التحديات الحسابية والبرمجية المرتبطة بموقع الرقم العشري داخل النص

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

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

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

2. التشريح النظري للمعادلة المركبة لاستخراج الأرقام العشرية

2.1 البنية الهيكلية الشاملة للمعادلة المتقدمة

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

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

=MID(A2, MIN(SEARCH({0,1,2,3,4,5,6,7,8,9}, A2&”0123456789″)), MAX(IFERROR(FIND({0,1,2,3,4,5,6,7,8,9}, A2, …))) – MIN(…) + 1)

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

2.2 دور دالة MID في اجتزاء النصوص بدقة متناهية

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

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

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

2.3 تكامل الدوال الرياضية والبحثية لتحديد مواضع الأرقام

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

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

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

3. تحديد بداية الرقم العشري باستخدام دوال البحث والمصفوفات

3.1 آلية عمل مصفوفة الأرقام {0,1,2,3,4,5,6,7,8,9} مع دالة SEARCH

تستند فلسفة البحث الموجه في إكسل إلى استخدام ما يسمى بالثوابت المصفوفية، وهي مصفوفة ثابتة مسبقة التعريف تضم كافة الأرقام الأساسية المحتملة في النظام العشري: {0,1,2,3,4,5,6,7,8,9}. وعند تمرير هذه المصفوفة كوسيط بحث أول داخل دالة SEARCH، يتغير السلوك القياسي للدالة تغيراً جذرياً؛ إذ بدلاً من إرجاع رقم مفرد يشير إلى موضع تطابق واحد، فإنها تجري عشر عمليات فحص متزامنة عبر السلسلة النصية المستهدفة لتعيد مصفوفة تتألف من عشرة مخرجات موضعية تعكس مواقع ظهور كل خانة عددية على حدة.

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

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

3.2 دلالة دمج السلسلة النصية مع الأرقام الثابتة عبر المعامل &

يواجه استخدام دالة SEARCH مع مصفوفة الأرقام عقبة برمجية حاسمة: فإذا كانت الخلية النصية الأصلية لا تحتوي على بعض الأرقام—وهو الأمر المعتاد في معظم السجلات، كأن يرد الرقم 12.52 دون احتواء النص على الأرقام 3 أو 4 أو 6 أو 7 أو 8 أو 9—فإن دالة SEARCH سترد خطأ حسابياً فادحاً من النوع #VALUE! لكل خانة مفقودة داخل المصفوفة المرجعة. وتكمن المشكلة في أن وجود خطأ مفرد داخل المصفوفة سيعطل وظيفة دالة MIN بالكامل ويؤدي إلى انهيار المعادلة برمتها وإرجاع رسالة خطأ صريحة.

وهنا تتجلى العبقرية الهندسية لمعادلات إكسل المركبة من خلال تطبيق حيلة وقائية فائقة الأثر؛ حيث يتم دمج نص السلسلة المراد فحصها مع سلسلة ثابتة تضم كافة الأرقام مجتمعة “0123456789” عبر استخدام معامل الدمج النصي (&) في الوسيط الثاني لدالة البحث، لتصبح الصياغة: A2 & “0123456789”. هذه الإضافة الملحقة تضمن بيقين رياضي مطلق أن كل رقم من عناصر مصفوفة البحث {0..9} سيتواجد حتماً داخل النص الممتد لمرة واحدة على الأقل، مما يمنع نهائياً ظهور الخطأ #VALUE! ويجعل مصفوفة النتائج مليئة بقيم رقمية مستقرة بنسبة مئة بالمئة.

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

3.3 استخدام دالة MIN لحساب أدنى موقع يمثل بداية الرقم العشري

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

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

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

4. تحديد نهاية الرقم العشري وإدارة المصفوفات الديناميكية

4.1 توليد مصفوفات المواضع المتسلسلة باستخدام دوال ROW و INDIRECT و LEN

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

تبدأ العملية بحساب الطول الكلي للسلسلة النصية عبر دالة LEN(A2)، والتي تعيد عدد المحارف الإجمالي داخل الخلية بما فيها المسافات والفواصل. بعد ذلك، يتم دمج هذا الطول مع نص مرجعي صوري يمثل نطاقاً رأسياً من الصفوف يمتد من 1 إلى نهاية الطول الإجمالي، مثل “1:” & LEN(A2). غير أن هذا التعبير يظل مجرد نص مجرد لا يمكن للمحرك التعامل معه كمرجع نطاق، وهنا يأتي دور دالة INDIRECT التي تحول هذا النص الحرفي إلى مرجع خلايا حقيقي معترف به في ذاكرة البرنامج.

عند تغذية هذا المرجع المستحدث إلى دالة ROW، فإنها تستجيب بإرجاع مصفوفة عمودية من الأرقام الصحيحة تبدأ من الرقم 1 وتتدرج تصاعدياً بمقدار خانة واحدة حتى تبلغ الطول الكلي للخلية: {1; 2; 3; 4; …; LEN}. هذه المصفوفة الرقمية الديناميكية تمثل في واقع الأمر مؤشراً شاملاً يغطي كافة الإحداثيات الحرفية للنص الأصلي دون استثناء، مما يتيح لخوارزميات الفحص اللاحقة تجزئة السلسلة وفحص كل محرف فيها على انفراد لتحديد مدى انتمائه للمنظومة الرقمية للعدد العشري.

4.2 البحث عن المواضع الأخيرة للأرقام عبر دالة FIND

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

في الأرقام العشرية، تكتسب هذه الخطوة طابعاً حيوياً بالغ الحساسية، إذ يجب على الفحص رصد الخانات التي تعقب الفاصلة العشرية مباشرة. فإذا تضمن النص الرقم 12.52، فإن الخانات الكسرية (5 و 2) تحتل مواضع تالية لموضع الفاصلة. وبما أن الفاصلة العشرية بذاتها ليست رقماً صرفاً، فإن حصر الفحص في مصفوفة الأرقام {0..9} يضمن تحديد الخانة 2 كآخر ظهور رقمي مؤكد في هذه الكتلة العددية.

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

4.3 إدارة الأخطاء الحسابية واحتساب الطول الصافي عبر IFERROR و MAX

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

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

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

الطول الصافي = موضع النهاية (MAX) – موضع البداية (MIN) + 1

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

Excel extract decimal number from string
Excel extract decimal number from string

5. التطبيق العملي للمعادلة: دراسة حالة تفصيلية خطوة بخطوة

5.1 إعداد جدول البيانات ونمذجة الحالات الاختبارية

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

“She bought 12.52 pounds of fruit”

إن قراءة هذا النص تكشف عن احتلال الكلمات الأبجدية لمقدمة السلسلة (“She bought “) بطول يبلغ 11 محرفاً متضمناً المسافة الفاصلة، يليه الرقم العشري المستهدف (12.52) الذي يمتد على مساحة 5 محارف (خانتان صحيحتان، وفاصلة عشرية، وخانتان كسريتان)، ثم يعقبه نص وصفي ختامي (” pounds of fruit”) يمتد حتى نهاية السلسلة. ويشكل هذا السجل نموذجاً مثالياً لاختبار قدرة الخوارزمية على تجاوز النص البادئ واستخلاص الجزء العشري دون التأثر بالأوصاف اللاحقة.

يوضح الجدول التوضيحي التالي الهيكلية المعتمدة للحالة الاختبارية مقارنة بين المعطيات المدخلة والمخرجات المستهدفة وسلوك الفهارس المكانية المتوقعة أثناء المعالجة الحسابية:

الخلية المرجعية (A2) موضع البداية المتوقع موضع النهاية المتوقع الطول المحسوب القيمة المستخرجة (B2)
She bought 12.52 pounds of fruit المحرف 12 (الرقم 1) المحرف 16 (الرقم 2) 5 محارف (16 – 12 + 1) 12.52

5.2 كتابة المعادلة وتنفيذها في الخلية المستهدفة

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

=MID(A2, MIN(SEARCH({0,1,2,3,4,5,6,7,8,9}, A2&”0123456789″)), MAX(IFERROR(FIND({0,1,2,3,4,5,6,7,8,9}, A2, ROW(INDIRECT(“1:”&LEN(A2)))), 0)) – MIN(SEARCH({0,1,2,3,4,5,6,7,8,9}, A2&”0123456789”)) + 1)

تتطلب هذه المعادلة في بيئات إكسل التقليدية (إصدارات 2019 وما قبلها) طريقة إدخال خاصة تعرف بإدخال صيغ المصفوفات؛ حيث لا يتم الضغط على مفتاح الإدخال العادي Enter منفرداً، بل يجب الضغط المتزامن على مفاتيح لوحة المفاتيح: Ctrl + Shift + Enter. وتعد هذه الخطوة شرطاً برمجياً لإخطار محرك الحساب القديم بوجوب تكرار دالتي ROW و FIND عبر نطاق مصفوفي كامل، وهو ما يترجمه البرنامج بصرياً بإحاطة المعادلة بقوسي مجموعة متعرجين { } تلقائياً.

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

5.3 التعميم والتعامل مع السجلات المتعددة عبر مقبض التعبئة

عقب التحقق من صحة النتائج وسلامتها في الخلية التجريبية الأولى، تتسع الحاجة لتعميم هذا الحل البرمجي على امتداد جدول البيانات الذي قد يحوي آلاف السجلات المشابهة. وتبرز هنا قوة التصميم الهندسي القائم على استخدام المراجع النسبية؛ حيث اعتمدت المعادلة على الإشارة للخلية A2 بحرية تامة دون تثبيتها بعلامات الدولار المطلقة ($A$2)، مما يتيح للصيغة التكيف الذاتي مع تغير موضع الصف عند تكرارها.

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

إن هذا التعميم التلقائي يخضع البيانات لعملية فحص وتنقية جماعية فورية؛ فمهما اختلفت تراكيب الجمل النصية في السجلات اللاحقة—سواء كانت نصوصاً موجزة مثل “Weight: 4.75 kg” أو نصوصاً مسهبة مثل “The total measured volume was approximately 105.80 liters per tank”—فإن المعادلة تتكيف مع الإحداثيات الفريدة لكل خلية وتستخرج الرقم العشري المضمن بأمان مطلق ودون أي خلل تركيبي.

6. المعالجة الدقيقة للرموز العشرية وتوافق الإعدادات الإقليمية

6.1 معضلة النقطة والفاصلة العشرية في الأنظمة واللغات المختلفة

تشكل الإعدادات الإقليمية (Regional Settings) الخاصة بنظام التشغيل ويندوز وتطبيقات أوفيس أحد أبرز مصادر الخطأ المنهجي في معالجة البيانات النصية الدولية والمحلية؛ إذ ينقسم العالم الحاسوبي إلى مدرستين رئيسيتين في تمثيل الأعداد العشرية: المدرسة الأنجلوساكسونية التي تعتمد النقطة (.) كعلامة كسرية والفاصلة (,) كفاصل لتجميع الآلاف، والمدرسة الأوروبية واللاتينية ومعظم المعايير العربية القياسية التي تستخدم الفاصلة (,) كعلامة عشرية والنقطة لفصل الآلاف.

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

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

6.2 تحويل النص المستخرج إلى قيمة رقمية قابلة للعمليات الحسابية

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

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

=VALUE(MID(…))

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

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

6.3 تنسيق الخلايا والتحكم في عدد المنازل العشرية الناتجة

لا تنتهي مهمة الضبط التقني عند التحويل الرياضي، بل تمتد لتشمل الإخراج البصري للبيانات عبر التنسيق المخصص للخلايا (Custom Number Formatting)؛ فالأرقام العشرية المستخلصة قد تعاني من تباين مراتب التقريب وظهور أصفار زائدة على يمين الفاصلة، أو اختفاء الصفر الدال على أجزاء المئة في حالات الكسور النقدية (كأن يظهر 12.5 بدلاً من 12.50)، مما يخل بالاتساق المظهري للتقارير والرسوم البيانية.

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

يلعب هذا الضبط التنسيقي دوراً حيوياً في تهيئة البيانات لربطها المباشر بنماذج الجداول المحورية (Pivot Tables) ومولدات الرسوم البيانية؛ فالقيم المهيأة تنسيقياً ورقمياً تضمن تمثيلاً بيانياً دقيقاً لمحاور القياس، وتمنع تشتت الفئات الحسابية، وتوفر تدفقاً سلساً للمعلومات يخدم متخذي القرار دون تشويش ناتج عن التفاوت المظهري للمدخلات النصية السابقة.

7. التعامل مع الحالات الشاذة والنصوص المعقدة ومتعددة الأرقام

7.1 معالجة النصوص التي تحتوي على أكثر من قيمة رقمية

تتعرض المعادلات التقليدية المصممة لاستخراج الأرقام العشرية لانهيار هيكلي ملحوظ عندما تطبق على خلايا نصية تشتمل على أكثر من قيمة رقمية متباعدة؛ كأن يرد السجل بالشكل التالي: “Order 12 contains 3.5 units”. ففي هذه الحالة، ستلتقط دالة MIN الرقم الأول (1) من العدد 12 كبداية للنطاق، في حين ستلتقط دالة MAX الرقم الأخير (5) من العدد 3.5 كنهاية للنطاق، مما يجعل دالة MID تقطع كامل الحيز النصي الواقع بينهما، معيدة النتيجة المشوهة: “12 contains 3.5″، وهي بالتأكيد قيمة نصية لا يمكن تحويلها إلى رقم عشري سليم.

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

تظهر أهمية هذه الحلول في البيئات التعليمية والهندسية المعقدة كما استعرض روس ودي سوزا-داو (Ross & de Souza-Daw, 2021) في تحليلهما لتصميم مسارات التعلم التفاعلية وحل المشكلات الهندسية غير المباشرة؛ حيث يتعين على النظم البرمجية تجزئة المشكلة الكلية إلى وحدات صلبة وتطوير خوارزميات فحص متمايزة تتعامل مع الشواذ البيانية وتحفظ استقرار المنظومة الحسابية بوجه المدخلات غير المتوقعة.

7.2 إدارة الأرقام السالبة والرموز المصرفية الملحقة

تمثل الأرقام العشرية السالبة تحدياً إضافياً لمعادلات الاستخراج القياسية؛ إذ تسبق هذه الأعداد إشارة الطرح الرياضية (-)، وهي رمز غير مدرج بطبيعة الحال ضمن مصفوفة الأرقام {0..9}. وإذا لم يتم تعديل منطق الفحص الموضعي، فإن دالة MIN ستتجاوز علامة السالب وتبدأ الاقتطاع من الخانة الرقمية الأولى، مما يحول الرقم السالب إلى قيمة موجبة ويترتب عليه خطأ جسيم في الحسابات المالية يقلب الموازين بين الأرباح والخسائر أو التدفقات النقدية الصادرة والواردة.

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

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

7.3 تأمين المعادلة ضد نصوص الفراغ وحالات غياب الأرقام بالكامل

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

يقتضي التأمين المنهجي للمعادلة إحاطتها بغلاف فحص منطقي مشروط يختبر وجود الأرقام قبل الشروع في عمليات الاقتطاع المعقدة. ويتحقق ذلك بتوظيف دالتي IF و COUNT أو ISNUMBER لمسح الخلية؛ فإذا أثبت الفحص المبدئي غياب الخانات الرقمية، تتوقف المعادلة فورياً عن العمل وتعيد قيمة فارغة تماماً (“”) أو رسالة نصية مخصصة تفيد بخلو السجل من الأرقام، متفادية هدر طاقة المعالجة في عمليات مسح عقيمة.

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

8. الحلول البديلة والحديثة: توظيف دوال Excel 365 المتطورة

8.1 استخدام الدوال النصية الحديثة (TEXTBEFORE و TEXTAFTER و TEXTSPLIT)

أحدثت مايكروسوفت نقلة نوعية في بنية محرك الحساب الخاص ببرنامج Excel 365 بإطلاق حزمة من الدوال النصية الذكية المصممة لتجاوز التعقيد الهيكلي للصيغ المصفوفية القديمة. وتشمل هذه الحزمة دوال TEXTBEFORE و TEXTAFTER و TEXTSPLIT، والتي تمكن المستخدم من اجتزاء النصوص وعزلها بدلالة الفواصل والمحددات الحرفية دون حاجة للتعامل المباشر مع فهارس الأرقام ومصفوفات الفحص الطويلة.

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

=–TEXTBEFORE(TEXTAFTER(A2, “bought “), ” pounds”)

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

8.2 توظيف دالة LET لتحسين قابلية القراءة وكفاءة المعالجة

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

في المعادلات التقليدية لاستخراج الأرقام، نلاحظ تكرار استدعاء أجزاء معقدة مثل MIN(SEARCH(…)) و LEN(A2) لعدة مرات داخل صيغة الخلية لحساب نقطتي البداية والنهاية، مما يفرض على البرنامج إعادة تقييم هذه العمليات مراراً ويثقل كاهل الذاكرة. ولكن باستخدام دالة LET، يمكن حوسبة هذه القيم لمرة واحدة فقط وتخزينها في متغيرات وسيطة (مثل: Start, FullLen, NumStr)، ثم استخدام هذه الأسماء المختصرة في الصياغة الختامية لدالة MID، كما في النمط التوضيحي التالي:

=LET(txt, A2, start, MIN(SEARCH({0,1,2,3,4,5,6,7,8,9}, txt&”0123456789″)), …)

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

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

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

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

ومع ذلك، يظل القيد الأساسي الذي يواجه الحلول الحديثة متمثلاً في التوافقية العكسية (Backward Compatibility)؛ فالصيغ المصممة عبر دوال TEXTSPLIT أو LET ستعجز تماماً عن العمل وتفرز أخطاء الاسم المجهول #NAME? إذا تم فتح المصنف في إصدارات إكسل القديمة (مثل إكسل 2016 أو 2013). لذا، يتعين على المهندس المعماري للبيانات تقييم بيئة العمل التقنية داخل المؤسسة قبل الاستقرار على الخيار المنهجي النهائي لضمان سلاسة تبادل الملفات واستقرار الأداء.

9. استخراج الأرقام العشرية باستخدام تقنيات Power Query والبرمجة النصية

9.1 أتمتة استخراج الأرقام عبر محرر Power Query

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

توفر باور كويري واجهة ذكية تدعم ميزة “العمود من الأمثلة” (Column From Examples)، والتي تعتمد على خوارزميات الاستدلال النمطي؛ حيث يقوم المستخدم بتزويد البرنامج بنموذج أو نموذجين للرقم العشري المستهدف (كأن يكتب 12.52 أمام الجملة الأولى)، ليقوم المحرك الذكي تلقائياً باستنباط القاعدة النصية وتوليد كود بلغة إم (M Code) لاستخراج كافة الأرقام الكسرية لباقي السجلات بدقة فائقة وبدون كتابة صيغ مصفوفية معقدة في أوراق العمل.

أما من المنظور البرمجي المتقدم داخل باور كويري، فيمكن استدعاء الدالة المتخصصة Text.Select وتغذيتها بحزمة المحارف المسموح باستبقائها حصراً، وهي الأرقام من “0” إلى “9” مضافاً إليها رمز الفاصلة العشرية، وفق الصياغة المعتمدة:

Text.Select([Column1], {“0”..”9″, “.”})

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

9.2 بناء دوال مخصصة (UDF) باستخدام لغة Visual Basic for Applications (VBA)

توفر بيئة التطوير المدمجة في إكسل المدعومة بلغة فيجوال بيزك للتطبيقات (VBA) ملاذاً برمجياً استثنائياً للباحثين والمطورين الراغبين في تبسيط واجهة العمل للمستخدم النهائي عبر إنشاء دوال معرفة مخصصة (User-Defined Functions – UDF). تتيح هذه الدوال إخفاء التعقيد الحسابي داخل وحدة برمجية خلفية، واستدعاء الوظيفة في ورقة العمل باسم بسيط ومعبر مثل ExtractDecimal(A2) تماماً كأي دالة قياسية مضمنة في البرنامج.

يتم بناء الدالة المخصصة عبر فتح محرر Visual Basic وإدراج وحدة نمطية جديدة (Standard Module)، وصياغة كود يقوم بالمرور الحلقي على محارف السلسلة النصية لفحصها وتجميع الخانات الرقمية والفاصلة العشرية في سلسلة نصية موحدة، ثم تحويلها عبر دالة التحويل CDbl إلى رقم عشري حقيقي. يوضح النص البرمجي التالي الهيكلية الإجرائية البسيطة لهذه الوظيفة:

Function ExtractDecimal(CellRef As Range) As Double
    Dim i As Long, Str As String, Char As String
    For i = 1 To Len(CellRef.Value)
        Char = Mid(CellRef.Value, i, 1)
        If Char Like “[0-9.]” Then Str = Str & Char
    Next i
    ExtractDecimal = Val(Str)
End Function

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

9.3 توظيف التعابير النمطية (Regular Expressions – RegEx)

تمثل التعابير النمطية (RegEx) الأداة الأكثر قوة ونضجاً في عالم علوم الحاسوب لمعالجة النصوص واصطياد الأنماط الرمزية المعقدة. وتتيح هذه التقنية تعريف قوالب نصية رياضية بالغة التجريد للبحث عن الأنماط التي تطابق تكوين الأرقام العشرية بدقة متناهية، متفوقة على كافة الدوال التقليدية في التمييز بين الأرقام الحقيقية وعلامات الترقيم المضللة، وهو ما أشارت إليه أبحاث راميريز لوبيز ورفاقه (Ramirez López et al., 2020) حول كفاءة المصنفات وخوارزميات المعالجة التلقائية للنصوص وقواعد البيانات المعقدة في فرز الأنماط المستهدفة وتصنيفها بدقة مطلقة.

في بيئة إكسل، يمكن توظيف التعابير النمطية عبر استدعاء كائن الأتمتة المكتبي VBScript.RegExp داخل أكواد VBA، وتعيين نمط المطابقة النمطي الصارم المخصص للأرقام العشرية:

Pattern = “[0-9]+.[0-9]+”

أو بصيغته الشاملة للأعداد الصحيحة والعشرية معاً: “d*.?d+”. يقوم هذا النمط باصطياد التتابع المكون من خانة رقمية واحدة أو أكثر متبوعة بفاصلة عشرية حقيقية وخانات كسرية ملحقة، متجاهلاً المسافات والكلمات والنقاط الإملائية المعزولة في نهاية الجمل.

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

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

10.1 معايير توثيق الصيغ المعقدة لتسهيل التدقيق والمراجعة

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

يتحقق هذا التوثيق الفعال عبر إدراج تعليقات توضيحية داخل الخلايا (Cell Comments / Notes)، أو استخدام الدالة التوثيقية N() داخل شريط الصيغ ذاته لإضافة ملاحظات نصية لا تؤثر إطلاقاً على سير الحساب الجبري. كما يوصى بشدة بإنشاء صفحة غلاف أو دليل مرجعي (Data Dictionary) ضمن المصنف يشرح الافتراضات المنهجية المعتمدة في استخراج البيانات، وتحديد المعايير المتبعة للتعامل مع الفواصل العشرية والأرقام المتعددة، مما يرفع من الموثوقية العلمية للنتائج المستخرجة.

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

10.2 إجراءات التحقق من صحة البيانات وجودتها بعد المعالجة

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

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

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

10.3 استراتيجيات تحسين سرعة الحساب ومعالجة مجموعات البيانات الضخمة

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

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

كذلك ينصح بالتحويل المؤقت لخيارات الحساب في إكسل من الوضع “التلقائي” (Automatic) إلى الوضع “اليدوي” (Manual) أثناء مراحل بناء المعادلات المصفوفية وتطبيقها على النطاقات الواسعة، لتمكين المحلل من كتابة الصيغ وسحبها دون انتظار تنفيذ الحساب مع كل حركة ماوس. وبعد اكتمال ضبط كافة الصيغ، يتم الضغط على مفتاح F9 لإجراء الحساب لمرة واحدة فقط، مما يحقق أعلى مستويات الكفاءة الإجرائية ويضمن تدفقاً سلساً للمعلومات دون إهدار موارد المعالجة المركزية للحاسوب في بيئات المؤسسات والتحليلات الضخمة الشائعة في دراسات الشبكات والمحتوى التفاعلي الحديثة (Griffiths et al., 2026; Chourasia et al., 2026).

خاتمة

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

كما بينت المراجعة المقارنة أن التطور التقني لبرمجيات الجداول قد وفر ترسانة متباينة من الحلول تناسب مختلف مستويات البنية التحتية؛ بدءاً من المعادلات المصفوفية التقليدية الصامدة في كافة الإصدارات القديمة، مروراً بالدوال الديناميكية الحديثة وتقنيات LET و RegEx في إصدارات Excel 365، ووصولاً إلى محركات التحويل المؤسسية المتقدمة في Power Query والبرمجة النصية بلغة VBA. إن التوظيف الواعي لهذه الأدوات، المقترن بإجراءات التحقق الصارمة وتوثيق الصيغ وفق أفضل الممارسات، يشكل صمام الأمان لبناء قواعد بيانات موثوقة ونظيفة، تنهض عليها القرارات الاستراتيجية والبحوث العلمية الرصينة في عصر البيانات الضخمة.

المراجع

  • Berlincioni, L., Cultrera, L., Becattini, F., & Del Bimbo, A. (2024). Neuromorphic valence and arousal estimation. Journal of Ambient Intelligence and Humanized Computing. https://doi.org/10.1007/s12652-024-04885-w
  • Brupbacher, G., Gerger, H., Wechsler, M., Zander-Schellenberg, T., Straus, D., Porschke, H., et al. (2019). The effects of aerobic, resistance, and meditative movement exercise on sleep in individuals with depression: protocol for a systematic review and network meta-analysis. Systematic Reviews. https://doi.org/10.1186/s13643-019-1018-4
  • Chourasia, N., Lamba, C. S., & Gupta, A. K. (2026). Hybrid deep learning and feature-based approaches for facial expression recognition. Discover Computing. https://doi.org/10.1007/s10791-026-10146-5
  • Griffiths, S., Martyn, I., Kannan, H., Stone, B., Austen, E., Tescari, E., et al. (2026). Blurring the Boundaries: An Investigation of Eating Disorder Recovery Content on TikTok. International Journal of Eating Disorders. https://doi.org/10.1002/eat.70153
  • Hwang, H. (2026). Automated measurement of complexity, accuracy, and fluency indices for Korean language data. Studies in Second Language Acquisition. https://doi.org/10.1017/s0272263126102009
  • Keuleers, E., Lacey, P., Rastle, K., & Brysbaert, M. (2011). The British Lexicon Project: Lexical decision data for 28,730 monosyllabic and disyllabic English words. Behavior Research Methods. https://doi.org/10.3758/s13428-011-0118-4
  • Landmann, E. (2023). I can see how you feel—Methodological considerations and handling of Noldus’s FaceReader software for emotion measurement. Technological Forecasting and Social Change. https://doi.org/10.1016/j.techfore.2023.122889
  • Ramirez López, C. M., Montes Rivera, M., Ochoa Zezzatti, A., Ponce Gallegos, J. C., & Guzmán Mendoza, J. E. (2020). Identification of possible suicide cases using a Bayesian Classifier with the database the Emergency Service 911 of Aguascalientes. International Journal of Combinatorial Optimization Problems and Informatics. https://doi.org/10.61467/2007.1558.2021.v12i1.187
  • Ross, R., & de Souza-Daw, A. (2021). Educational Escape Rooms as an Active Learning Tool for Teaching Telecommunications Engineering. Telecom. https://doi.org/10.3390/telecom2020010
  • Taylor, P. J. (2006). Proximity coefficients as a measure of interrelationships in sequences of behavior. Behavior Research Methods. https://doi.org/10.3758/bf03192748
★

تقييم هذا المحتوى

5.0 / 5 • 7 تقييمات

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

looti, M. (2026, أكتوبر 23). إكسل: كيفية استخراج رقم عشري من سلسلة نصية. عرب سايكلوجي. https://arabpsychology.com/statistics/excel-extract-decimal-number-from-string/
looti, Mohammed. “إكسل: كيفية استخراج رقم عشري من سلسلة نصية.” عرب سايكلوجي, 23 أكتوبر 2026, https://arabpsychology.com/statistics/excel-extract-decimal-number-from-string/.
looti, Mohammed. “إكسل: كيفية استخراج رقم عشري من سلسلة نصية.” عرب سايكلوجي. أكتوبر 23, 2026. https://arabpsychology.com/statistics/excel-extract-decimal-number-from-string/.