السلام عليكم
كلما تغافلت عن إكمال هذه الشروح
لظنى أن أحدا لا يستفيد منها ولا ينتظرها
كلما أرجعنى عن هذا
ردود كرد الأخ الأستاذ سيد - حفظه الله -
فلنكمل
===========
عرفنا أن المعادلة التالية لاتعمل
مع أن بناءها صحيح
و صيغتها مضبوطة
كود:
=SUMPRODUCT($A$2:$A$14="محمد")*($B$2:$B$14="موظف")*($C$2:$C$14)
الأسباب
المطلوب من الدالة التحقق من أن قبمة الخلية هى " موظف"
هل تعلم أن التحقق يتم و يرجع النتيجة
إذا كانت قيمة الخلية " محمد "
يرجع إكسل القيمة
true
و إذا لم تكن قيمتها " محمد "
ترجع القيمة
false
true و false
هذه أيضا نصوص يعنى حروف
ليست أرقاما
وأختنا الدالة هذه لا تعمل إلا مع الأرقام
نريد أن نستبدل ب true و false أرقاما
مثلا
true = 1
false = 0
فما السبيل ؟
لاحظ التعديل الذى أجريناه هنا
كود:
=SUMPRODUCT(--($A$2:$A$14="محمد")*--($B$2:$B$14="موظف")*($C$2:$C$14))
لاحظتم الفرق ؟
وضعنا علامتى " ناقص " قبل المصفوفة
الأولى
والثانية
ولم نضع قبل الثالثة
لماذا
لأن المصفوفة الثالثة أرقام ؟
لا
لأن المصفوفة الثالثة ليس فيها شروط
و الأولى و الثانية معيار
يعنى شرط
يرجع
true و false
" لو أردت أن أضيف شرطا للمصفوفة الثالثة أيضا سأضع هاتين العلامتين -- " مع أنها رقمية
الآن ترجم إلى لغة الأرقام
الصف الأول
محمد مدرس 33 =
1 × صفر × 33 = صفر

الصف السادس
محمد موظف 20 =
1 × 1 × 20 = 20
و الصف ال 13
محمد موظف 32
1 × 1 × 32 = 32
و بالجمع
20 + 32 = 52
==========
أظن الآن أشرقت الشمس من جديد
ملخص
* إذا كنت ستضرب مصفوفات كلها أرقام و ليس لديك أى شرط تتحقق منه
فلا مشكلة عندك
* إذا كنت ستضرب مصفوفات بمعيار أو شرط معين
ضع ( -- ) قبل المصفوفة التى بها الشرط
حتى لو كانت المصفوفات المضروبة كلها أرقام
لكن هناك شروط
هذه الشروط ترجع نصوصا
true - false
فحولها لأرقام
صفر و 1
وإلى لقاء آخر مع مزيد من التوضيح
و الحمد لله أولا و آخرا