Excel: كيفية استخراج الأرقام من سلسلة
يمكنك استخدام الصيغة التالية لاستخراج الأرقام من سلسلة في Excel:
=TEXTJOIN("",TRUE,IFERROR((MID( A2 ,ROW(INDIRECT("1:"&LEN( A2 ))),1)*1),""))
ستقوم هذه الصيغة المحددة باستخراج جميع الأرقام من السلسلة الموجودة في الخلية A2 .
على سبيل المثال، إذا كانت الخلية A2 تحتوي على التعبير “25 دراجة”، فستعيد هذه الصيغة ببساطة 25.
يوضح المثال التالي كيفية استخدام هذه الصيغة عمليًا.
مثال: استخراج الأرقام من سلسلة في Excel
لنفترض أن لدينا قائمة السلاسل التالية في Excel:
لنفترض أننا نريد استخراج الأرقام فقط من كل سلسلة.
للقيام بذلك، يمكننا كتابة الصيغة التالية في الخلية B2 :
=TEXTJOIN("",TRUE,IFERROR((MID( A2 ,ROW(INDIRECT("1:"&LEN( A2 ))),1)*1),""))
يمكننا بعد ذلك النقر على الصيغة وسحبها إلى كل خلية متبقية في العمود B:
يحتوي العمود B الآن فقط على الأرقام من كل سلسلة من السلاسل المطابقة في العمود A.
كيف تعمل هذه الصيغة؟
تذكر الصيغة التي استخدمناها لاستخراج الأرقام من السلاسل:
=TEXTJOIN("",TRUE,IFERROR((MID( A2 ,ROW(INDIRECT("1:"&LEN( A2 ))),1)*1),""))
وإليك كيفية عمل هذه الصيغة:
أولاً، تقوم الدالة ROW(INDIRECT(“1:”&LEN( A2 ))) بإرجاع سلسلة من الأرقام من 1 إلى طول السلسلة.
بعد ذلك، يقوم (MID( A2 ,ROW(INDIRECT(“1:”&LEN( A2 ))),1)*1) بتحويل كافة الأحرف في النص إلى #VALUE! أخطاء.
بعد ذلك يقوم IFERROR((MID( A2 ,ROW(INDIRECT(“1:”&LEN( A2 ))),1)*1),””) بإزالة كافة القيمة $VALUE! أخطاء.
أخيرًا، تقوم TEXTJOIN(“”،TRUE,IFERROR((MID( A2 ,ROW(INDIRECT(“1:”&LEN( A2 ))),1)*1),””)) بتجميع جميع الأرقام المتبقية وتجاهل الفراغات.
والنتيجة النهائية هي أنه يمكننا استخراج الأرقام فقط من كل سلسلة.
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية تنفيذ المهام الشائعة الأخرى في Excel:
Excel: كيفية استخراج النص بين حرفين
Excel: كيفية استخراج النص بعد الحرف
Excel: كيفية استخراج النص قبل الحرف