Image

شرح دالة تجزئة وجمع الرقم داخل خلية







السلام عليكم و رحمة الله و بركاته


هذه التدوينة بناء على طلب أحد الأخوة بشرح آلية عمل الدالة:
=SUMPRODUCT(–MID(A2,ROW(INDIRECT(1&LEN(A2))),1))

هدفنا من هذه الدالة هو معرفة حاصل جمع الأرقام الموجودة في الخلية A2
فعلى سبيل المثال لو كان الرقم في الخلية هو 667337
فالمطلوب إذاً هو6+6+7+3+3+7

و لعمل ذلك يجب تجزئة الرقم حسب الخانات و أفضل دالة لعمل هذه التجزية هي الدالة MIDبحيث يكون متغيراتها الاول و الأخير ثابت و المتغير الثاني يزداد من 1 إلى 6 و هو عدد الأحرف في الخلية
فعليه ستكون المعادلة بالشكل التالي:
=MID(A2,1,1)
=MID(A2,2,1)
=MID(A2,3,1)
=MID(A2,4,1)
=MID(A2,5,1)
=MID(A2,6,1)

و ستكون النتيجة على التوالي
6
6
7
3
3
7
و من ثم نجمعها


بمعنى أن الدالة يجب أن تكون بهذا الشكل:
=SUM(MID(A2,1,1),MID(A2,2,1),MID(A2,3,1),MID(A2,4,1),MID(A2,5,1),MID(A2,6,1))


و بما أن المتغير الثاني يتغير من معادلة إلى أخرى و بزيادة ثابته نستخدم المعادلة التالية
ROW(INDIRECT(1&LEN(A2))

و هذا الجزء من المعادلة يقوم ببناء تسلسل رقمي بدايته 1 و نهايته عدد الأحرف الموجودة في الخلية و التي نحصل عليها من خلال المعادلة
LEN
و التي سيكون ناتجها
6
و هو عدد الأحرف أو الأرقام في الخلية
و يكون ناتج هذا الجزء من المعادلة كالتالي
{1;2;3;4;5;6}
و بذلك يصبح شكل معادلة
MID
MID(A2,{1;2;3;4;5;6},1)
و لأنها من ضمن صفيف فستقوم بتجزء الرقم الموجود في الخلية A2رقم برقم إبتداء من أول رقم و حتى آخر رقم فتصبح بشكلها التالي
=SUMPRODUCT(–{6;6;7;3;3;7})
و بذلك يسهل على المعادلة
SUMPRODUCT
جمع الأرقم بعد تحويلها إلى أرقام حقيقة بواسطة –


============

يمكن إستخدام نفس المعادلة السابقة و إستبدال علامتي — بضربها بالرقم 1 او جمعها للرقم 0

أيضاً يمكن إستخدام نمط معادلات الصفيف مع نفس المعادلة أعلاه بدلاً من إستخدام
SUMPRODUCT
نستخدم الدالة
ٍSUM
=SUM(MID(A2,ROW(INDIRECT(1&LEN(A2))),1)+0)

و لكن يجب الضغط على
Ctrl+Shift+Enter




دمتم بود
يحيى حسين

0 التعليقات:

شكرا على التعليق

Excel4Us