logo

لوحة التميز الأسبوعي
العضو المتميز المشرف المتميز المراقب المتميز المدير المتميز الموضوع المتميز القسم المتميز
العضو المتميز المشرف المتميز المراقب المتميز المدير المتميز الموضوع المتميز القسم المتميز
Hatem Eissa hassona229-- لا تميز خلال هذه الفترة لا تميز خلال هذه الفترة لا تميز خلال هذه الفترة اكسيل مشاريع جاهزه



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





28-10-2017 12:27 صباحاً
معلومات الكاتب ▼
تاريخ الإنضمام : 23-09-2017
رقم العضوية : 627
المشاركات : 259
الدولة : مصر
الجنس :
تاريخ الميلاد : 14-2-1980
قوة السمعة : 2169
الاعجاب : 1
موقعي : زيارة موقعي
بسم الله الرحمن الرحيم

السادة // أعضاء المنتدى الكرام
السلام عليكم ورحمه الله وبركاته ،،،

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

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

ملحوظات هامة :
1 - تم عمل تعريف للمدى بشيت بيانات الطلبة بإسم school لأننا سنتخدم هذا المدى داخل الكود
يتم التعريف من خلال تبويب Formulas ثم بإختيار Name Manager
2 - تم إنشاء قائمة منسدلة بإسم Class وهى خاصة بالفصول
لكى يتم اختيار الفصل بشيت قوائم الفصول وذلك لجلب البيانات بالخلية L2
3 - تم إنشاء قائمة منسدلة خاصة بالنوع وذلك فى حالة الرغبة فى انشاء قائمة للفصل حسب النوع (( ذكر أو أنثى ))
تجدون القائمة بشيت قوائم الفصول بالخلية J2
4 - بالخلية E2
وهى نقطة هامة جدا برجاء الانتباه لها
تلك الخلية يتم ادخال رقم بها ،، هذا الرقم هو نصف عدد طلاب الفصل الواحد
نلاحظ التالي:
* أنه تم وضع شرط إفتراضى بالكود أن نصف عدد طلاب الفصل الواحد = 50 طالب
* فى حالة أن عدد طلاب الفصل إجماليا = 39 طالب
فى هذه الحالة يجب إدخال قيمة رقمية بالخلية E2
أى نسجل بها رقم 20
لكى يتم قسمة عدد الطلاب على قائمتين حسب تنسيق الجدول بشيت قوائم الفصول

5 - تجدون بالكود الموجود داخل المرفق
أنه تم الإعلان عن عدد 5 متغيرات وتم تعريفهم داخل الكود سنتحدث عن جزئية منهم
C=10 وهى صف رقم 10 بشيت قوائم الفصول
Y=6 وهى عدد الأعمدة بشيت قوائم الفصول التى يتم جلب البيانات إليها ،، وهى مقسومة على قائمتين كل منهم تحتوى على 6 أعمدة
M=0 وتم تعريفها بـ M=M+1 وهى تعنى الصف الذى يلى صف رؤوس الأعمدة بشيت قوائم الفصول حتى نهاية القائمة

أيضا تجدون بالكود جزئية هامة وهى
CODE
                    Cells(C + M, Y + 3) = .Cells(R, 2)



وهى تعنى
C+M تعنى أن الصف رقم 10 نضيف له M أى نضيف له 1 وهك>ا حتى نهاية الحلقة التكرارية
Y+3 تعنى أن بشيت قوائم الفصول به قائمتين يتم جلب البيانات إليها وفقا لشروط تم تحديدها
----------------------
فـ Y=6 هنضيف إليها رقم 3 إذا يكون المجموع 9
يعنى أن العمود الثالث بشيت قوائم الفصول فى حالة ملء البيانات به حسب شرط عدد نصف الطلاب
سينتقل إلى العمود التاسع بالقائمة الثانية

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

CODE
Sub MZM_START()
' الاعلان عن المتغيرات وعددهم خمسة
Dim MyRange As Range
Dim R As Integer, C As Integer, M As Integer, Y As Integer, t As Integer
'تعريف مدى البيانات بشيت بيانات الطلبة الذى يتم جلب البيانات منه
'='بيانات الطلبة'!$A$10:$AK$1009
'بإسم school
Set MyRange = Range("School")
    Application.Calculation = xlCalculationManual
    Application.ScreenUpdating = False

'=================================
' مسح البيانات
'استدعاء كود مسح البيانات بشيت قوائم الفصول
'لإستقبال البيانات الجديدة وهذا المدى تم تحديده داخل  الكود
'("B11:L60")

MZM_ClearContents
'=================================
' فرز School
'استدعاء كود الفرز للبيانات بشيت بيانات الطلبة

MZM_Sort
'=================================
'تم وضع شرط إضافة نصف عدد الفصل بالخلية
'E2
'وفى حال عدم وجود بيانات بتلك الخلية يتم التنفيذ بناء على شرط افتراضى
'أن نصف عدد الفصل يساوى 50 طالب
'نلاحظ أنه فى حالة عدم ادخال رقم بهذه الخلية سيتم جلب البيانات داخل قائمة واحدة
'ولن يتم قسمة عدد إجمالى طلاب الفصل على قائمتين

If IsEmpty(Range("E2")) Or IsNumeric(Range("E2")) = False Then t = 50 Else t = Range("E2").Value
'تحديد صف رؤوس الجدول بالصف العاشر
C = 10
With MyRange
'بداية حلقة تكرارية لجلب البيانات المطلوبة مع وضع شروط لها كالتالي

    For R = 1 To .Rows.Count
        If .Cells(R, 2) <> "" Then
           ' اضافة شرط ان العمود الرابع بشيت بيانات الطلبة يتوافق مع رقم الفصل المطلوب بالخلية
           'L2
           'الموجود بها قائمة الفصول بشيت قوائم الفصول

            If .Cells(R, 4).Text = Range("L2").Text Then
                'وضع شرط فى حال توافر بيانات بالخلية
                'J2
                'القائمة المنسدلة الخاصة بالنوع ذكر أم أنثى يعمل الكود على أساسها
                'فى حال عدم توافر بيانات بها يستمر الكود فى عمله
                'شرط أن تتوافق الخلية مع العمود رقم 18 بالشيت الرئيسى
                If Range("J2").Text = "" Then GoTo 1
                If .Cells(R, 18).Text = Range("J2").Text Then
1               If M >= t Then Y = 6: M = 0
                    M = M + 1
                   'تم اضافة شرط خاص بتنسيق الجدول حسب تواجد رؤوس الأعمدة بشيت قوائم الفصول
                   'نقول فيه أن
                   'Y = 6
                   'أى أن عدد أعمدة كل قائمة من القائمتين بشيت قوائم الفصول والتى يتم جلب بيانات فيها عددها 6 أعمدة
                    If Y = 6 Then Cells(C + M, Y + 2) = M + t Else Cells(C + M, Y + 2) = M
                   'العمود الثالث بشيت قوائم الفصول يتم جلب البيانات إليه من العمود الثاني بشيت بيانات الطلبة
                   'مع ملاحظة أنه حسب الشروط فى حالة توافق شرط نصف عدد الطلاب حسب الخلية
                   'E2
                   'يتم قسمة عدد الطلاب على القائمتين بحيث أن العمود الثالث بشيت قوائم الفصول سيتم
                   'استكمال البيانات بالعمود التاسع بشيت قوائم الفصول
                   'وهذا ما تعنية
                   'Y + 3
                   'وهكذا فى باقي الأعمدة
                    Cells(C + M, Y + 3) = .Cells(R, 2)
                   'العمود الرابع بشيت قوائم الفصول يتم جلب البيانات إليه من العمود ال 17 بشيت بيانات الطلبة
                    Cells(C + M, Y + 4) = .Cells(R, 17)
                   'العمود الخامس بشيت قوائم الفصول يتم جلب البيانات إليه من العمود ال 11 بشيت بيانات الطلبة
                    Cells(C + M, Y + 5) = .Cells(R, 11)
                   'العمود السادس بشيت قوائم الفصول يتم جلب البيانات إليه من العمود ال 7 بشيت بيانات الطلبة
                    Cells(C + M, Y + 6) = .Cells(R, 7)
                End If
            End If
        End If
    Next R
End With
'=================================
'اخفاء الصفوف المتبقية من التعيين
If t = 50 Then GoTo 2
With Range("B11:L60")
'يتم اخفاء الصفوف الفارغة والتى زادت عن نصف عدد الفصل من الطلاب والذى تم تحديده بـ 50
    .Offset(t, 0).Resize(50 - t).EntireRow.Hidden = True
End With
'=================================
    Application.Calculation = xlCalculationAutomatic

2 Application.ScreenUpdating = True
End Sub
Sub MZM_ClearContents()
'يتم مسح هذا المدى لتجهيز الشيت لإستقبال بيانات جديدة
'مع إظهار الصفوف التى تم إخفاؤها
With Range("B11:L60")
    .ClearContents
   .EntireRow.Hidden = False
End With
End Sub
Sub MZM_Sort()
'عملية فرز للمدى المحدد بإسم
'School
'بشيت بيانات الطلبة بالعمودين
'A , B
With Range("School")
    .Sort .Columns("A:A"), xlAscending
    .Sort .Columns("B:B"), xlDescending
End With
End Sub




يرجى مراجعة المشاركة رقم 10
تم اضافة زر الطباعة لقائمة الفصل ، كذلك عمل بعض الإحصائيات
للذهاب مباشرة للمشاركة فى مشاهدة منفردة بالرابط التالى
http://techno7asry.com/forum/index.php?page=post&show=1&id=3612&num=10
تم تحرير الموضوع بواسطة :محمود الشريف بتاريخ:28-10-2017 05:52 مساءً

أثارت هذه المشاركة إعجاب: علي بطيخ سالم، تاج الدين،



look/images/icons/i1.gif إنشاء قوائم الفصول
  28-10-2017 12:43 صباحاً   [1]
معلومات الكاتب ▼
تاريخ الإنضمام : 26-09-2017
رقم العضوية : 705
المشاركات : 440
الجنس :
تاريخ الميلاد : 2-2-1990
قوة السمعة : 657
الاعجاب : 0
الاستاذ المحترم محمود الشريف
يحفظك الله ويرعاك
هل يمكن تطويع الكود ليناسب اللجان مثل الفصول لكن كل قسم لجنه يبقى في الورقه لجنتان
جزاك الله كل خير




look/images/icons/i1.gif إنشاء قوائم الفصول
  28-10-2017 12:44 صباحاً   [2]
معلومات الكاتب ▼
تاريخ الإنضمام : 26-09-2017
رقم العضوية : 705
المشاركات : 440
الجنس :
تاريخ الميلاد : 2-2-1990
قوة السمعة : 657
الاعجاب : 0
شرح ولااروع
يبارك فيك ربنا




look/images/icons/i1.gif إنشاء قوائم الفصول
  28-10-2017 12:56 صباحاً   [3]
معلومات الكاتب ▼
تاريخ الإنضمام : 26-09-2017
رقم العضوية : 705
المشاركات : 440
الجنس :
تاريخ الميلاد : 2-2-1990
قوة السمعة : 657
الاعجاب : 0
عند الحفظ تظهر هذه الرساله .... ماذا تعني هذه الرساله ؟

MjQ2OTYwMQ8888666
 
 





look/images/icons/i1.gif إنشاء قوائم الفصول
  28-10-2017 01:17 صباحاً   [4]
معلومات الكاتب ▼
تاريخ الإنضمام : 23-09-2017
رقم العضوية : 627
المشاركات : 259
الدولة : مصر
الجنس :
تاريخ الميلاد : 14-2-1980
قوة السمعة : 2169
الاعجاب : 1
موقعي : زيارة موقعي
الأستاذ الكريم // ناصر سعيد
جزاكم الله خيرا

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

أما فيما يختص بالرسالة
فهذه تعنى أن المستند أو الملف يحتوى على وحدات ماكرو ( فيجوال بيسك اكسل )
فقط قم بالضغط على زر OK

وتقبل منى وافر الاحترام والتقدير




look/images/icons/i1.gif إنشاء قوائم الفصول
  28-10-2017 09:06 صباحاً   [5]
معلومات الكاتب ▼
تاريخ الإنضمام : 26-09-2017
رقم العضوية : 705
المشاركات : 440
الجنس :
تاريخ الميلاد : 2-2-1990
قوة السمعة : 657
الاعجاب : 0
الاستاذ الكبير محمود الشريف
جزاك الله كل خير .. وبارك فيك
ساوافيك الان بتصور ملف اللجان




look/images/icons/i1.gif إنشاء قوائم الفصول
  28-10-2017 09:21 صباحاً   [6]
معلومات الكاتب ▼
تاريخ الإنضمام : 26-09-2017
رقم العضوية : 705
المشاركات : 440
الجنس :
تاريخ الميلاد : 2-2-1990
قوة السمعة : 657
الاعجاب : 0
 
 
  توزيـــع لجان للاستاذ محمود الشريف1.rar   تحميل rar مرات التحميل :(52)
الحجم :(60.002) KB





look/images/icons/i1.gif إنشاء قوائم الفصول
  28-10-2017 09:24 صباحاً   [7]
معلومات الكاتب ▼
تاريخ الإنضمام : 26-09-2017
رقم العضوية : 705
المشاركات : 440
الجنس :
تاريخ الميلاد : 2-2-1990
قوة السمعة : 657
الاعجاب : 0
فيما يختص بقائمه الفصول التي تفضلت بابداع كودها وشرحها
نرجو معها كود طباعه الفصول ليكتمل العمل




look/images/icons/i1.gif إنشاء قوائم الفصول
  28-10-2017 12:25 مساءً   [8]
معلومات الكاتب ▼
تاريخ الإنضمام : 20-10-2017
رقم العضوية : 1153
المشاركات : 7
الجنس :
تاريخ الميلاد : 29-3-1960
قوة السمعة : 12
الاعجاب : 0
السلام عليكم ورحمة الله
شكرا استادي وبارك الله فيك
الكود ممتاز من زمن بعيد ابحث عنه لأني اعمل في سلك التعليم واحتاج لمثل هذا الكود
هل يمكن جعل الكود يفرز البيانات عند البحث بحث يتم ترتيبها أبجدياً
وجزاكم الله خيراً




look/images/icons/i1.gif إنشاء قوائم الفصول
  28-10-2017 05:03 مساءً   [9]
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 3
المشاركات : 10529
الجنس :
تاريخ الميلاد : 1-10-1978
الدعوات : 24
قوة السمعة : 36759
الاعجاب : 186
بارك الله فيك أخي الحبيب محمود الشريف وجزيت خير الجزاء

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




look/images/icons/i1.gif إنشاء قوائم الفصول
  28-10-2017 05:35 مساءً   [10]
معلومات الكاتب ▼
تاريخ الإنضمام : 23-09-2017
رقم العضوية : 627
المشاركات : 259
الدولة : مصر
الجنس :
تاريخ الميلاد : 14-2-1980
قوة السمعة : 2169
الاعجاب : 1
موقعي : زيارة موقعي
الأستاذ الكريم // ناصر سعيد
تم إضافة زر الطباعة لقائمة الفصل

الأستاذ الكريم // عبد العزيز
راجع النسخة الثانية بالمرفقات تم تظبيط أمر الفرز إن كنت تقصد الفرز بعد جلب البيانات بقائمة الفصول
إن لم يعمل معك زر البحث من أول مرة إضغط عليه مرة أخري

أستاذى القدير // ياسر خليل
بارك الله فيكم وجزاكم الله عنى خير الخير

وتقبلوا منى وافر الاحترام والتقدير




look/images/icons/i1.gif إنشاء قوائم الفصول
  27-10-2018 08:38 مساءً   [11]
معلومات الكاتب ▼
تاريخ الإنضمام : 19-09-2018
رقم العضوية : 8086
المشاركات : 279
الجنس :
تاريخ الميلاد : 30-10-1982
الدعوات : 1
قوة السمعة : 991
الاعجاب : 14
ما شاء الله تبارك الرحمن شرح ممتاز




look/images/icons/i1.gif إنشاء قوائم الفصول
  29-10-2018 04:03 مساءً   [12]
معلومات الكاتب ▼
تاريخ الإنضمام : 09-01-2018
رقم العضوية : 3506
المشاركات : 19
الجنس :
تاريخ الميلاد : 26-11-1963
قوة السمعة : 24
الاعجاب : 0
جزاكم الله ... جاري التجربة




اضافة رد جديد اضافة موضوع جديد
الصفحة 2 من 2 < 1 2 >




المواضيع المتشابهه
عنوان الموضوع الكاتب الردود الزوار آخر رد
Adobe Illustrator 2024 v28.0 لإنشاء التصميمات والأيقونات الرائعة نسخة مفعلة عوض السوداني
0 82 عوض السوداني
07 _ دمج المراسلات باستخدام البايثون (إنشاء العديد من ملفات الورد) YasserKhalil
7 713 YasserKhalil
إنشاء تبويب مخصص وعمل إضافة مخصصة Create Custom Tab Create AddIn YasserKhalil
15 498 EM_ACC
كود إنشاء فولدر يأخذ اسمه من اخر خلية فى عمود محدد mohamedmondy
3 310 soufisamchi
إنشاء QR على الاكسل ayoub2007
2 845 خالد الشاعر

الكلمات الدلالية
إنشاء ، قوائم ، الفصول ،









اخلاء مسئولية: يخلى منتدى أكاديمية الصقر للتدريب مسئوليته عن اى مواضيع او مشاركات تندرج داخل الموقع ويحثكم على التواصل معنا ان كانت هناك اى إنتهاكات تتضمن اى انتهاك لحقوق الملكية الفكرية او الادبية لاى جهة - بالتواصل معنا من خلال نموذج مراسلة الإدارة .وسيتم اتخاذ الاجراءات اللازمة.
سياسة النشر: التعليقات المنشورة لا تعبر عن رأي منتدى أكاديمية الصقر للتدريب ولا نتحمل أي مسؤولية قانونية حيال ذلك ويتحمل كاتبها مسؤولية النشر.

الساعة الآن 12:41 AM