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

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

قام بنشر

السلام عليكم ورحمة الله وبركاته

تحية طيبة لاعضاء هذا المنتدي

كل عام وانتم بخير

اريد  كود نقل بيانات من صفحة الي صفحة اخرى بعد استبعاد التلاميذ المحولين

هذا ملف مرفق للاطلاع عليه

ولكم جزيل الشكر والاحترام

ترحيل.rar

 

قام بنشر

مرحبا

جرب هذا الكود في موديل و اجعل له زر

Sub sCopyTo()

    Dim iSh As Worksheet, Sh As Worksheet, MyArray, MySheet, I As Long, R As Long, X As Long
    Dim Wrd1 As String, Wrd2 As String, Wrd3 As String
    Set iSh = Sheets("A"): Set Sh = Sheets("y")
    Wrd1 = "حول": Wrd2 = "معلق": Wrd3 = "معلقة"
    MyArray = iSh.Range("S10:AB" & iSh.Cells(Rows.Count, 21).End(xlUp).Row).Value
    
    
    ReDim MySheet(1 To UBound(MyArray, 1), 1 To UBound(MyArray, 2))
    For I = LBound(MyArray, 1) To UBound(MyArray, 1)
        If MyArray(I, 1) <> Wrd1 And MyArray(I, 4) <> Wrd2 And MyArray(I, 4) <> Wrd3 Then
        For X = 3 To 10
        MySheet(R + 1, X) = MyArray(I, X)
        Next X
        R = R + 1
        End If
    Next I
    Sh.Range("A10").Resize(R, UBound(MySheet, 2)).Value = MySheet
    
End Sub

 

  • Like 5
قام بنشر

تسلم ايدك استاذي الغالي أبو حنــــين

دا المطلوب فعلا الله ينور تسلم ايدك

ولي طلب لو امكن اضافة امر مسح البيانات السابقه الموجوده في شيت (  Y  ) قبل وضع البيانات الجديده

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

ولك مني تحياتي

 

قام بنشر

 

الأستاذ الفاضل / ابو حماده

السلام عليكم ورحمة الله وبركاته

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

وأقدم لك حل متواضع آخر باستخدام المعادلات حيث تقوم بالترحيل تلقائيا ـ ويمكن ترحيل الأسماء كما طلبت بعد استبعاد المحولين والمعلقين ــ

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

وتقبل تحياتى

 

ترحيل 2ـ بالمعادلات.rar

  • Like 2
قام بنشر
منذ ساعه, ابو حمادة said:

تسلم ايدك استاذي الغالي أبو حنــــين

دا المطلوب فعلا الله ينور تسلم ايدك

ولي طلب لو امكن اضافة امر مسح البيانات السابقه الموجوده في شيت (  Y  ) قبل وضع البيانات الجديده

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

ولك مني تحياتي

 

عوداً حميداً أخي الكريم أبو حمادة ...

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

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

 

عدلت تعديل طفيف للغاية بحيث تكون مصفوفة النتائج تحتوي على النتائج المطلوبة فقط وهي تبدأ من U10:AB وإلى آخر صف

عموماً إليكم الكود مع الشرح لجميع أسطر الكود على الرابط التالي

رابط الكود مع الشرح من هنا

  • Like 4
قام بنشر

شكرا لكل من ساعدنى ورد علي طلبي

ولكنني لا اعرف كيف اغير النطاق في هذا الكود علي ورقة اخرى علما اننى اريد اغير نطاق البيانات التي سيتم ترحيلها بداية من العمود ( B10 ) الي العمود ( J10 ) 

يريت حد يعرفنى ازى اغير نطاق النسخ واين هو  سطر الموجود في الكود بحيث اعدل عليه النطاق 

قام بنشر

هو تحدي نطاخ الخلايا صعب في الكود دا للدرجدي ولا ايه سبب عدم الرد عليا

الكود حقيقي ممتاز ويعمل جيدا ولكنى عند تطبيقة علي احدي الصفحات الاخرى ولكن نطاق نسخ البيانات مختلف لا اعرف كيف احدد له النطاق

اريد فقط السطر المختص بتغيير نطاق الخلايه اين هو في هذا الكود ومعذرة لعدم علمي

 

الكود حقيقي ممتاز ويعمل جيدا ولكنى عند تطبيقة علي احدي الصفحات الاخرى ولكن نطاق نسخ البيانات مختلف لا اعرف كيف احدد له النطاق

اريد فقط السطر المختص بتغيير نطاق الخلايه اين هو في هذا الكود ومعذرة لعدم علمي 

النطاق الذي اريد نسخ البيانات منه بداية من العمود C10 الى العمود J10 

 

قام بنشر

أخي الكريم أبو حمادة لاأدري إذا كنت اطلعت على الشرح أم لا ..

حاول تدرس أي كود عايز تطبقه عشان تقدر تتعلم شيء جديد

عموماً بالنسبة لطلبك السطر المطلوب لتحديد النطاق الخاص بالبيانات هو السطر التالي

MyArray = iSh.Range("S10:AB" & iSh.Cells(Rows.Count, 21).End(xlUp).Row).Value

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

  • Like 1
قام بنشر

شكرا استاذ ياسر علي ردك

انا لم اقرا الشرح ال حضرتك قلت عليه لاني لم ارا اي شرح للكود

بالنسبه للسطر ال حضرتك اشرت اليه

MyArray = iSh.Range("S10:AB" & iSh.Cells(Rows.Count, 21).End(xlUp).Row).Value

رقم ( 21  ) المذكور في سطر الاوامر دا معناه ايه هل هو رقم  بداية العمود لنسخ البيانات ولا ايه مش فاهم والنطاق المحدد ( S10:AB )  ممكن تشرحلى الجزئية دي ولك مني جزيل الشكر 

 

 

 

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