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

استفسار في كود ترحيل


2saad
إذهب إلى أفضل إجابة Solved by أ / محمد صالح,

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

المطلوب من فضلكم

عايز اعرف  ايه معني الجزء ده في كود ترحيل الناجحين والراسبين 

( '''  بداية ونهاية صفوف الورقة المصدر For R = 11 To 700 )

يعني عايز اعرف ازاي عرف  ان  R) )   هي اسم الشيت الأول ( الشيت )

لان عندي شيتات كثيرة وعايز اعمل ترحيل

يعني ينفع بدلا من ( R ) اكتب اسم الشيت

ومعكم الملف المرفقترحيل مفيد باختبار اعمدة معينة.rar

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

  • أفضل إجابة

المتغير R هنا هو فقط عداد للصف النشط في الحلقة التكرارية for next في شيت (الشيت) 

وتبدأ قيمته من 11 وهو أول صف فيه درجات لطالب

إلى 700 وهي آخر صف فيه درجات لطالب ويمكنك تعديله إلى رقم 64 حيث أنه رقم صف آخر سجل فعلا

ويمكنك تسمية المتغير بأي اسم مثلا n

بالنسبة لاسم الشيت مادام الإجراء يتم استدعاؤه من شيت (الشيت) فيتم التعامل على أنه الشيت النشط ولا حاجة لكتابة اسمه في الكود

بالتوفيق 

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

لو سمحتم

عايز اعرف الخطأ في كود الترحيل

انا برحل اعمدة معينة من شيت ( الصف الرابع ) الي شيت ( سعد )

ولما اضغط علي زر الترحيل اجد الترحيل في نصف الصفحة

مش عارف ليه ... إنتبه من فضلك ممنوع تكرار نفس المشاركات والا ستحذف جميع المشاركات

انا مرفق لكم الملفسعد4.xlsm

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

كود الترحيل ليس به أخطاء

الأخطاء في تنظيم الملف والكتابة فيه أكثر من مرة مع عدم الحذف

++ وأول الأخطاء الموجودة هو عدم وجود بيانات في الصف الثاني إلا في الأعمدة F & G & H

وكود LR الذي يحمل الصف الأخير مضافا عليه 1 لن يكون مضبوطا لأن الصف الثاني هو المقصود رغم انه به بيانات

* وحل هذه المشكلة هو وضع العناوين في الصف الثاني أو كتابة أي شيء في الصف الثاني مثل ======== بحيث يكون أول صف بعد المكتوب فيه هو 3

++ ثاني مشكلة يوجد كتابة في وسط الشيت تمنع من وصول المتغير lr لمكانه الصحيح

* والحل هو الوقوف في الخلية A2 ثم ضغط ctrl وسهم لأسفل سيقف المؤشر عند خلية معينة

يتم تحديد صف هذه. الخلية وكل الصفوف التي بعده إلى ما بعد الكتابة ثم حذف هذه الصفوف وليس حذف المحتويات (كلك يمين على رقم الصف ثم حذف)

الصواب بعد الضغط على ctrl وسهم لأسفل أن يصل المؤشر إلى آخر خلية في الشيت A1048576

++ وثالث مشكلة هي اعتمادك على العمود A في تحديد الصف الأخير في شيت الصف الرابع والذي يكون غير دقيق بسبب وجود معادلات في هذا العمود تجعل آخر صف هو 534 في حين أن الصواب 219 

* والحل هو أن تعتمد على العمود B في جلب الصف الأخير

lr = sh1.Cells(Rows.Count, 2).End(xlUp).Row

++ رابع مشكلة هي أنك تريد ترحيل عمود الفصل إلى العمود 14 ولكن استعملت في الكود العمود 13 مما يجعله يرحل الفصل إلى عمود التوزيع

* والحل تعديل سطر الترحيل إلى

sh2.Cells(erow, 14) = sh1.Cells(i, 5)

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

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

sh2.Range("a3:o1000").ClearContents

بالتوفيق 

 

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

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information