اذهب الي المحتوي
أوفيسنا

طلب شرح معادلة


الردود الموصى بها

ممكن شرح للمعادلة المرفقة

حتي اتمكن من فهمها

 

ومرفق ملف ( العمود O)QSC msl.xlsx

 

IFERROR(SUMPRODUCT((INDEX(ACH.!$B$3:$AP$9999;MATCH(A3;ACH.!$A$3:$A$9999;);)>0)*COUNTIF(INDEX(IP!$C$4:$N$44;;IFERROR(MATCH(C3;IP!$E$2:$N$2;)+2;MATCH(E3;IP!$C$3:$D$3;)));ACH.!$B$1:$AP$1));)

رابط هذا التعليق
شارك

السلام عليكم
تستطيع دائما تفكيك اي معادلة لفهمها

لاحظ أن نظام الجهاز عندي يضع بالمعادلة علامة (,) بدلا من (;)

المعادلة السابقة
بعد تفكيكها تكون كالتالي  

=IFERROR(A,)

حيث نستعيض بالمعامل   A  عن المعادلة 

SUMPRODUCT((INDEX(ACH.!$B$3:$AP$9999,MATCH(A3,ACH.!$A$3:$A$9999,),)>0)*COUNTIF(INDEX(IP!$C$4:$N$44,,IFERROR(MATCH(C3,IP!$E$2:$N$2,)+2,MATCH(E3,IP!$C$3:$D$3,))),ACH.!$B$1:$AP$1))

ومعني المعادلة الأولي أن في حالة حدوث خطأ من المعادلة  A فلا تكتب النتيجة خطأ
والآن إلي  المعادلة  A بنفس الطريقة نبسطها كالتالي
 

A= SUMPRODUCT(B*C)
حيث
B=(INDEX(ACH.!$B$3:$AP$9999,MATCH(A3,ACH.!$A$3:$A$9999,),)>0)
،
C=COUNTIF(INDEX(IP!$C$4:$N$44,,IFERROR(MATCH(C3,IP!$E$2:$N$2,)+2,MATCH(E3,IP!$C$3:$D$3,))),ACH.!$B$1:$AP$1)

ومعني ذلك ببساطة أن A تساوي حاصل ضرب مصفوفتين B,C مشروطتين

والمصفوفة B هي أيضا يمكن تبسيطها هكذا 

B=(INDEX(B1,B2,)>0)
حيث 
B1
هي المجال 
ACH.!$B$3:$AP$9999

،
B2
هي المعامل الناتج عن
MATCH(A3,ACH.!$A$3:$A$9999,)

و لإيجاد المعامل B2
نذهب للورقة ACH في المجال A3:A9999 والذي يبدأ بالخلية A3 لتبحث عن كود العميل والموجود بالخلية A3 بالورقة QSC ،
إذن ستجد أنه في الصف الثامن (إذا بدأت العد من الخلية A3 )

أي أن : الجزء الأخير من المصفوفة B والذي أسميناه B2 سيأتي بالرقم 8
إذن المصفوفة B هي عنصر ناتج من المجال B1     (أي المجال B3:AP9999  في الورقة ACH) وهو العنصر الثامن 
وحيث أن رقم العمود لم يذكر فيكون الناتج هو كامل الصف الثامن من المجال B3:AP9999  في الورقة ACH
وبما أن  وحيث المجال B3:AP9999  يحتوي علي 41 عمود من (B) إلي (AP)
إذن نتوقع أن يكون العنصر الثامن هذا هو محتوي 41 خلية وبالرجوع لها تجدها (1 , 0 , 1 , 0 , 1 , 1 , 0 , 6.25 , 1 , 2 , 2 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 1 , 1 , 0 , 1 , 0 , 0 , 0 , 0 , 1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0) بالترتيب حيث يعتبر الخلايا الفارغة أصفار
باقي معني أخير بالمصفوفة B وهي مقارنة العناصر الناتجة بالرقم 0 (حيث آخر مقطع منها هو >0)
فالناتج النهائي لها سيكون 41 عنصرا كل منها يحتوي علي 1 إذا كان الأصلي أكبر من 0 ويحتوي علي 0 إذا كان الأصلي ليس أكبر من 0
الناتج النهائي لها سيكون هكذا (1 , , 1 , , 1 , 1 , , 1 , 1 , 1 , 1 , , , , , , , , , , , , , 1 , 1 , , 1 , , , , , 1 , , , , , , , , , )
والمعني الطبيعي لهذا هو جعل الإكسل ينتقي عدد المرات (الأصناف) التي أخذها هذا العميل

والآن المصفوفة C هي ..... هكذا بنفس الوسيلة تجد أنها أيضا تنتج 41 عنصرا
من الورقة الأخيرة IP وهذه العناصر رأسية (SKU CODE) ولابد أن تتساوي في العدد مع عناصر المصفوفة الأولي أي 41 عنصرا
حقيقة أنا لا أعلم ماذا يعني SKU CODE ولكن تقاطع المصفوفتين سينتج 1 عند التقاطعات المملؤة أي التي بها 1 في المصفوفتين
 

أعتقد أن المعني لهذا هو جعل الإكسل ينتقي عدد المرات (الأصناف) التي أخذها هذا العميل وفي نفس الوقت تتطابق مع هذا ال SKU CODE

 

  • Like 5
  • Thanks 1
رابط هذا التعليق
شارك

بارك الله فيك أستاذ طارق شرح وافى وكافى

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

بمعنى الضغط له على الإعجاب او الشكر واعتقد ان هذا هو اقل ما تقدمه له

بارك الله فيكم جميعا اساتذتنا الكرام لكم الفضل بعد ربنا فى تعلمنا الإكسيل جعل الله كل هذه الأعمال فى ميزان حسناتكم

  • Like 1
رابط هذا التعليق
شارك

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information