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

السادة المعلمين... الرجاء المساعدة


راسكو

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

لدي مشكلة في ملف إكسل المؤلف من شريحتين:

- الأولى xyz الذي يحتوي على نتائج بعض الطلاب
- الثانية students والتي تحتوي على أسماء الطلاب

والمطلوب:

كود VBA يكتب كل أسماء المواد المحمولة (الراسبة أي: الغياب أو أقل من 60 درجة) في السنة الأولى في الشريحة students في الخلية C1,C2....... في الفصل الثاني فقط

وأسماء المواد المحمولة في السنة الثانية في نفس الشريحة في الخلية D1,D2....... في الفصل الثاني فقط

وعلى كل الأحوال كل الشكر لكم وللسادة المشرفين والسادة الأعضاء

نتائج.rar

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

وعليكم السلام ورمة الله وبركاته
أفضلت وتفضلت.... ماشاء الله
شكراً لك على الرد.... لقد استفدت كثيراً جداً مما أرسلته
وأعتذر عن اللبس: ( لم افهم مالسنة الأولى و السنة الثانية) : فبعض المواد هي في السنة الأولى وبعضها في الثانية وإني لم أوضح ذلك... فعذراً 
(المواد التي  في كودها رقم المئات =1 هي للسنة الأولى والرقم2 هي للسنة الثانية)
أستاذي العزيز: وإن أثقلت، كيف يمكنني عمل ذلك بكود VBA ؟
ودمت كريماً لقوم كرام

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

السلام عليكم

(المواد التي  في كودها رقم المئات =1 هي للسنة الأولى والرقم2 هي للسنة الثانية)

وما هي المواد التي  في كودها رقم المئات =3 

مثل : 302 ، 312 ، 305 ، 301

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

وعليكم السلام أستاذنا العزيز
لا تؤاخذني فإني قليل الخبرة في الإكسل

( وما هي المواد التي  في كودها رقم المئات =3 ) على ما يبدو أنها مواد السنة الثالثة
ولكن سؤال: إذا غيرت الفرز من تصاعدي إلى تنازلي أو العكس أو قمت بعملية إدراج ضمن النتائج لسبب ما.... هل ستتغير نتائج الترحيل؟

                   وإذا أردت أن أرحّل فقط النتائج التي في الفصل الثاني( xyz!A:A=2)، فكيف سيكون الكود؟
وشكراً لكم دوما

تم تعديل بواسطه راسكو
رابط هذا التعليق
شارك

السلام عليكم

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

لا مشكلة أبدا غير كما تشاء

فقط فرغ الجدول من C2:D7 قبل الضغط علي الزر
و سأضيف لهذا الغرض سطر جديد بالكود

تعتمد فكرة الكود علي عمل فلتر بإسم الطالب مرتين (أقل من 60) ، (غائب)
ثم يتم تكوين متغيرين من مجمع نتائج الفلترين السابقين
المتغيرين هما yr1 ، yr2
ثم يتم وضعهما في نفس سطر الطالب ، كل واحدة في مكانها

 

وإذا أردت أن أرحّل فقط النتائج التي في الفصل الثاني( xyz!A:A=2)، فكيف سيكون الكود؟

أيضا لا مشكلة سأعمل لك  التغيير اللازم

تفضل المرفق

نتائج2.xlsm

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

أستاذي العزيز والله خجلتني

شكرا جزيلاً على الشرح والاهتمام الذي قل أن نجده إلا عند ذوي الهمة العالية
ولكني قصدت بعملية إدراج أو حذف الصفوف ضمن الشريحة المسماة xyz مثل إدراج نتائج جديدة أو حذف نتائج أوجعل النطاق المستهدف (A:J) مثلا ، فهل ستتغير لدي النتائج المرحلة ضمن الشريحة Students؟

بكل الأحوال أستاذي العزيز لقد كفيت ووفيت وأجدت

وشكراً لكم ولموقعكم المميز
دام عزكم

تم تعديل بواسطه راسكو
أخطاء إملائية وزيادة في التعبير
  • Like 1
رابط هذا التعليق
شارك

السلام عليكم

قصدت بعملية إدراج أو حذف الصفوف ضمن الشريحة المسماة xyz مثل إدراج نتائج جديدة أو حذف نتائج أوجعل النطاق المستهدف (A:J) مثلا ،
فهل ستتغير لدي النتائج المرحلة ضمن الشريحة Students؟

إذا أضفت مثلا صفوف أخري ممكن تغير الكود بنفسك تستبدل الرقم 113 برقم آخر صف لديك وكذلك 114  برقم آخر صف مضاف له (1)

            .[A1:J113].AutoFilter Field:=1, Criteria1:="2" ' يضاف هذا السطر لزيادة اختيار الصف الثاني في فلتر أقل من 60
            .[A1:J113].AutoFilter Field:=4, Criteria1:=nm
            .[A1:J113].AutoFilter Field:=8, Criteria1:="<60", Operator:=xlAnd
            .[B1:C114].Copy Cells(nr, 4)
            nr = [D999].End(xlUp).Row + 1
            .AutoFilterMode = off
            .[A1:J113].AutoFilter Field:=1, Criteria1:="2" ' يضاف هذا السطر لزيادة اختيار الصف الثاني في فلتر غياب
            .[A1:J113].AutoFilter Field:=4, Criteria1:=nm
            .[A1:J113].AutoFilter Field:=8, Criteria1:="غياب", Operator:=xlAnd
            .[B1:C114].Copy Cells(nr, 4)
            Rows(nr).Delete Shift:=xlUp

وإذا كانت هذه هي الحالة فسأعمل لك  التغيير اللازم لكي يكون الشييت مرن يقبل أي عدد من البيانات

 

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

السلام عليكم

لقد رددت عليك

إذا أضفت مثلا صفوف أخري ممكن تغير الكود بنفسك تستبدل الرقم 113 برقم آخر صف لديك وكذلك 114  برقم آخر صف مضاف له (1)

image.png.8d6a764484fe3df65cbcd0410d6b4a14.png

 

وإذا كنت تريد هذه هي الحالة بصفة دائمة فسأغير الكود ليزيد من مرونة الشييت ليقبل أي عدد من البيانات

 

  • 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.

×
×
  • اضف...

Important Information