استخراج الرقم من سلسلة Excel | 3 طرق لاستخراج الأرقام من السلسلة
استخراج الرقم من سلسلة في Excel
يعد تقسيم قيم الخلية المفردة إلى خلايا متعددة ، وتجميع قيم الخلايا المتعددة في خلية واحدة ، جزءًا من معالجة البيانات. بمساعدة وظيفة النص في Excel "Left و MID و Right" يمكننا استخراج جزء من قيمة النص أو قيمة السلسلة المحددة. من أجل جعل الصيغة ديناميكية ، يمكننا استخدام وظائف داعمة أخرى مثل "Find and LEN". ومع ذلك ، فإن استخراج الأرقام فقط مع مجموعة القيم الأبجدية الرقمية يتطلب مستوى متقدمًا من المعرفة بالصيغة. في هذه المقالة ، سوف نعرض لك 3 طرق لاستخراج الأرقام من سلسلة في Excel.
فيما يلي شرحنا الطرق المختلفة لاستخراج الأرقام من السلاسل في Excel. اقرأ المقال كاملاً لمعرفة هذه التقنية.
# 1 - كيف تستخرج رقمًا من السلسلة في نهاية السلسلة؟
عندما نحصل على البيانات ، فإنها تتبع نمطًا معينًا ويكون وجود جميع الأرقام في نهاية السلسلة أحد الأنماط.
يمكنك تنزيل رقم الاستخراج هذا من String Excel Template هنا - استخراج الرقم من String Excel Template
على سبيل المثال ، المدينة برمزها السري أدناه هي عينة من نفس الرمز.
في المثال أعلاه ، لدينا اسم المدينة والرمز البريدي معًا. في هذه الحالة ، نعلم أنه يتعين علينا استخراج الرمز البريدي من الجانب الأيمن من السلسلة. لكن إحدى المشكلات هي أننا لا نعرف بالضبط عدد الأرقام التي نحتاجها من الجانب الأيمن من السلسلة.
أحد الأشياء الشائعة قبل أن تبدأ القيمة العددية هو حرف التسطير السفلي (_). أولاً ، نحتاج إلى تحديد موضع حرف الشرطة السفلية. يمكن القيام بذلك باستخدام طريقة البحث. لذلك قم بتطبيق وظيفة FIND في Excel.
ما هو النص الذي نحتاج إلى إيجاده هو وسيطة البحث عن النص ؟ في هذا المثال ، نحتاج إلى إيجاد موضع الشرطة السفلية ، لذا أدخل الشرطة السفلية بين علامتي اقتباس مزدوجتين.
ضمن النص هو النص الذي نحتاج فيه للعثور على النص المذكور ، لذا حدد مرجع الخلية.
الحجة الأخيرة غير مطلوبة لذا اتركها حتى الآن.
لذلك ، لدينا مواضع تسطير أسفل السطر لكل خلية. الآن نحن بحاجة إلى تحديد عدد الأحرف لدينا في النص بأكمله. قم بتطبيق دالة LEN في Excel للحصول على الطول الإجمالي لقيمة النص.
الآن لدينا إجمالي الأحرف ومواضع الشرطة السفلية قبل القيمة العددية. لتوفير عدد الأحرف اللازمة لوظيفة RIGHT ، نحتاج إلى طرح إجمالي الأحرف مع وضع الشرطة السفلية.
الآن قم بتطبيق الدالة RIGHT في الخلية E2.
لذلك ، هكذا ، يمكننا الحصول على الأرقام من الجانب الأيمن عندما يكون لدينا حرف مشترك قبل أن يبدأ الرقم في قيمة السلسلة. بدلاً من وجود العديد من الأعمدة المساعدة ، يمكننا تطبيق الصيغة في خلية واحدة نفسها.
= RIGHT (A2، LEN (A2) -FIND ("_"، A2))سيؤدي ذلك إلى التخلص من جميع الأعمدة الداعمة وتقليل الوقت بشكل كبير.
# 2 - استخراج الأرقام من الجانب الأيمن ولكن بدون أحرف خاصة
افترض أن لدينا نفس البيانات ولكن هذه المرة ليس لدينا أي حرف خاص قبل القيمة العددية.
في المثال السابق ، وجدنا مكانة ذات طابع خاص ولكن هنا ليس لدينا هذا الترف. لذلك ستجد الصيغة أدناه الموضع العددي.
لا تقم بإيقاف تشغيل جهاز الكمبيوتر الخاص بك من خلال النظر إلى الصيغة ، وسوف أفك هذا لك.
بالنسبة لوظيفة البحث في Excel ، قمنا بتوفير جميع أرقام البداية الممكنة للأرقام ، لذلك تبحث الصيغة عن موضع القيمة العددية. نظرًا لأننا قدمنا جميع الأرقام الممكنة للمصفوفة ، يجب أن تحتوي المصفوفات الناتجة أيضًا على نفس الأرقام. ثم تُرجع الدالة MIN في Excel أصغر رقم بين رقمين ، لذا تقرأ الصيغة أدناه.
= MIN (SEARCH ({0،1،2،3،4،5،6،7،8،9}، A2 & ”0123456789 ″))والآن لدينا موضع عددي ، فلنجد الآن العدد الإجمالي للأحرف في الخلية.
سيؤدي هذا إلى إرجاع العدد الإجمالي للأحرف في قيمة الخلية المقدمة. الآن LEN - سيعيد موضع القيمة العددية عدد الأحرف المطلوبة من الجانب الأيمن ، لذلك قم بتطبيق الصيغة للحصول على عدد الأحرف.
الآن قم بتطبيق الدالة RIGHT في Excel للحصول على الجزء العددي فقط من السلسلة.
لتجنب عدة أعمدة مساعدة ، دعنا ندمج الصيغة في خلية واحدة.
= RIGHT (A2، LEN (A2) -MIN (بحث ({0،1،2،3،4،5،6،7،8،9}، A2 & ”0123456789 ″)) + 1)# 3 - استخراج الرقم من أي منصب في Excel
لقد رأينا من الاستخراج الأيمن ولكن هذا ليس هو الحال مع جميع السيناريوهات ، لذلك سنرى الآن كيفية استخراج الأرقام من أي موضع في سلسلة Excel.
لهذا ، نحن بحاجة إلى توظيف وظائف مختلفة من التفوق. يوجد أدناه صيغة لاستخراج الأرقام من أي موضع في السلسلة.
= IF (SUM (LEN (A2) -LEN (SUBSTITUTE (A2، {"0 ″،" 1 ″، "2 ″،" 3 ″، "4 ″،" 5 ″، "6 ″،" 7، " 8 ″، ”9”}، “”)))> 0 ، SUMPRODUCT (MID (0 & A2، LARGE (INDEX (ISNUMBER (–MID (A2، ROW (INDIRECT (“$ 1: $” & LEN (A2))) ، 1 )) * ROW (INDIRECT (“$ 1: $” & LEN (A2)))، 0)، ROW (INDIRECT (“$ 1: $” & LEN (A2)))) + 1،1) * 10 ^ ROW (INDIRECT ( "$ 1: $" & LEN (A2))) / 10) "")