منسق قام بنشر يناير 7, 2005 قام بنشر يناير 7, 2005 السلام عليكم ورحمة الله وبركاته عندي مشروع فيه بيعض البيانات مثلاً أسماء طلاب ونتائجهم وعدد الطلاب كبير جداً أريد برنامج الإكسل أن يفرز الطلاب الراسبين فقط أي الحاصلين على مجموع أقل من 50% في ورقة منفصلة (أسماء الطلاب ونتائجهم) كيف يمكنني عمل ذلك ولكم الشكر تحياتي ،، منسق
محمد حجازي قام بنشر يناير 8, 2005 قام بنشر يناير 8, 2005 السلام عليكم ... يمكنك ذلك عن طريق فرز مخصص (أظن أنك تعرف الطريقة) أو من خلال الأسلوب الموجود في المثال المرفق : STUDENT.zip
منسق قام بنشر يناير 9, 2005 الكاتب قام بنشر يناير 9, 2005 السلام عليكم ورحمة الله وبركاته أشكرك أخي محمد حجازي على هذا المثال تحياتي ،، منسق
خالد نور قام بنشر مارس 22, 2005 قام بنشر مارس 22, 2005 صحيح أستاذ صراحة حاجة حلوة حلوة وبمعادلات كمان بسم الله ماشاء الله ياريت بس شرح المعادلة وكيفية عملها لتطبيقها فى ملفات أخرى خالد نور (y)
محمد حجازي قام بنشر مارس 22, 2005 قام بنشر مارس 22, 2005 السلام عليكم ... الأسلوب السابق يعتمد على الأعمدة F ، G ، H المخفية وسوف أشرح إن شاء الله الصيغ الموجودة في هذه الأعمدة بصورة متسلسلة وذلك حتى نصل للحل ، وسوف أعتمد على شرح الصيغ الموجودة في ورقة الراسبين بصورة تمكنك من فهم الصيغ الموجودة في ورقة الناجحين (لأن الاختلاف بين الطريقتين بسيط جداً). لنبدأ بسم الله : الخلية F2 في ورقة الراسبين تحتوي على الصيغة التالية: =IF(OR('بيانات الطلاب'!B2>=D$3;'بيانات الطلاب'!B2="");"";'بيانات الطلاب'!A2) الصيغة السابقة تقوم بفرز الطلاب الراسبين لنقوم بالتعامل معهم لاحقاً ، و الصيغة تعتمد على الدالة IF و المعامل المنطقي OR و تفسير الصيغة هو كالتالي: إذا كانت الخلية B2 من الورقة "بيانات الطلاب" (الخلية المقابلة للخلية F2 في العامود B الموجود في الورقة "بيانات الطلاب") تحتوي على قيمة أكبر أو تساوي درجة النجاح D$3 (طالب ناجح) أو لا تحتوي على أية بيانات فأبقي على هذه الخلية F2 فارغة (تجاهل هذا الطالب) و إلا فأدرج قيمة الخلية A2 الموجود في ورقة "بيانات الطلاب" في هذه الخلية F2 (أدرج اسم الطالب الراسب). لاحظ أن المراجع الموجودة في الصيغة كلها مراجع نسبية ما عدا المرجع D$3 فهو مرجع مطلق وذلك لأن موضعه ثابت ولا نريد تغيير موضعه عند تعبئة الخلايا. ونلاحظ أيضاً أنه عند الإشارة للمراجع الموجودة في ورقة العمل الحالية"الطلاب الراسبين" فإننا لا نحتاج لكتابة اسم هذه الورقة قبل نطاق الخلايا ، ولكننا نكون مضطرين لكتابة اسم ورقة العمل عندما نريد الإشارة لنطاق موجود في ورقة أخرى. وبنظرة بسيطة نلاحظ أن الصيغة التالية : =IF(OR('بيانات الطلاب'!B2<D$3;'بيانات الطلاب'!B2="");"";'بيانات الطلاب'!A2) و الموجودة في الورقة "الطلاب الناجحين" تختلف عن الصيغة الموجودة في ورقة "الطلاب الراسبين" بشرط الفرز فقط. الخلية G2 في ورقة الراسبين تحتوي على الصيغة التالية: =IF(OR('بيانات الطلاب'!B2>=D$3;'بيانات الطلاب'!B2="");"";'بيانات الطلاب'!B2) نلاحظ أن هذه الصيغة تشبه إلى حد كبير الصيغة الموجودة في الخلية F2 مع فرق بسيط هو أن هذه الصيغة تقوم بإرجاع علامة الطالب بدلاً من اسمه. الخلية H2 في ورقة الراسبين تحتوي على الصيغة التالية: =IF(G2="";"";COUNT(G$2:G2)) الصيغة السابقة كما نلاحظ بسيطة وتعمل على احتساب ترتيب الطالب الناجح (عدد الطلاب الراسبين الموجودين قبل هذا الطالب بما فيهم هذا الطالب). الخلية A2 في ورقة الراسبين تحتوي على الصيغة التالية: =IF(ROW()-1>MAX(H$2:H$50);"";LOOKUP(ROW()-1;H$2:H$50;F$2:F$50)) هنا نحن استفدنا من رقم السطر الحالي في وضع ترتيب للطلاب ، وبما أننا نبدأ من الخلية A2 فنقوم بطرح الرقم 1 من رقم السطر وذلك حتى نستطيع بدء الترتيب من 1 , 2 ,3 , 000 , الخ. الصيغة السابقة تقوم بمقارنة أكبر قيمة من المجال H$2:H$50 مع الترتيب الحالي فإذا كان الترتيب الحالي أكبر من أكبر قيمة موجودة في هذا المجال فهذا يعني أن الطلاب الراسبين قد انتهوا وبذلك تقوم الصيغة بالإبقاء على هذه الخلية فارغة وإلا (أي مازال هناك طلاب راسبون) فتقوم هذه الصيغة بإرجاع اسم الطالب من المجال F$2:F$50 و المقابل لترتيب الطالب الحالي و المأخوذ من المجال H$2:H$50. الخلية B2 في ورقة الراسبين تحتوي على الصيغة التالية: نلاحظ أن هذه الصيغة تشبه إلى حد كبير الصيغة الموجودة في الخلية A2 مع فرق بسيط هو أن هذه الصيغة تقوم بإرجاع علامة الطالب بدلاً من اسمه. والآن نقوم بتعبئة الصيغ الثلاث السابقة على جميع الخلايا الموجودة في نفس الأعمدة وذلك حتى السطر 50 (آخر سطر في جدول الطلاب). أرجو أن أكون قد وفقت في الشرح . بالتوفيق
الردود الموصى بها