اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

ارجو المساعدة فى ترحيل البيانات


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

السلام عليكم

============

عماد فى السطر

 For R = 8 To Application.CountA(Range("au8:au5000"))

هل هذا السطر معناه انك حددت سطر البداية وهو 8 وجعلت الدالة Count هى التى تحدد اخر سطر فى البانات التى سوف ترحل

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

السلام عليكم

اخي هشام

افرض ان لدينا البيانات تبدأ من السطر 8 وتنتهي بالسطر 50 فيكون الكود

for i = 8 to 50
وبالتالي تم تنفيذ الحلقة التكرارية 43 مرة أي حسب عدد أسطر البيانات لكن عندما يتم إضافة اسطر بيانات جديدة فلن يتم شمل هذه الاسطر بالحلقة التكرارية وأغلب المستخدمين يعملون على زيادة عدد الحلقات التكرارية تحسبا لاي زيادة في البيانات ولكن بالنسبة إلي هذا المبدأ غير منطقي لماذا أدع البرنامج يكرر التكرار بدون سبب وكذلك لو كانت لديك بيانات كثيرة سيكون البرنامج بطئ نسبياً وبالتالي لعمل التكرار حسب عدد اسطر البيانات يتم تحديده تلقائياً حسب عدد الأطر التي يتم عدها باستخدام دالة العد counta
Application.CountA(Range("au8:au5000"))
وبذلك قمنا بتحديد عدد اسطر البانات وجعلناه نهاية حد التكرار لكن عدد الاسطر هو 43 سطر ونهاية حد التكرار هو 50 أي أن هناك فرق 7 مرات تكرار وسبب هذا الفرق هو لان البيانات لدينا تبدأ من السطر الثامن أي لو كانت اسطر البيانات بدأت من السطر الاول لن يحدث فرق بين عدد الاسطر ونهاية حد التكرار لذلك يجب إضافة هذا الفرق الى نهاية حد التكرار وهذا الفرق ما هو الا الاسطر السبعة الاولى السابقة لبداية اسطر البيانات التي لدينا
for i = 8 to Application.CountA(Range("au8:au5000"))+7

ارجو ان اكون اوضحت الفكرة بالشكل المطلوب

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

السلام عليكم

طبعا كلاكما اساتذة ومعلمين وكلامكم 100 × 100

ولكن كما قال الأستاذ الحسامي هذه معلومة للفائدة للجميع

بدل ما نحسب 8 ونزيد 10 وغيرة

للوصول الى آخر سطر مكتوب به اي معلومة في الورقة

TR = Sheets(TSH).Range("J55555").End(xlUp).Row + 1

و أضفنا + 1 بهدف الكتابة في السطر الفارغ الذي يلي السطر المكتوب

مع التحية و التقدير للجميع

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

Range("A" & R).Resize(1, 50).Copy

السلام عليكم اود معرفة شى بسيط وهذا طمع فى كرمكم ما معنى الحروف ِ R و A وا معنى الارقام 1 و 50 ارجو المساعدة وهل هذه الارقام والحروف تعنى شىء فى الشيت وجزاكم الله خيرا

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

السلام عليكم

اخي ولد طيبة

الفيجول بيسك بحر لا ينضب وأي مسألة فيه تحل بأكثر من طريقة

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

فهي عديدة ومنها الكود الذي ذكرته... وهنا على سبيل المثال

أكواد تستخدم لعد الأسطر المستخدمة

Cells(Cells.Rows.Count, "a").End(xlUp).Row 
Cells(Rows.Count, 1).End(xlUp)(1).Row
Cells(Rows.Count, Range("a1:a5000").Column).End(xlUp).Row 
Cells(Cells.Rows.Count, "a").End(xlUp).Row
Range("a1:a5000").Find(what:="*", after:=[A1], SearchDirection:=xlPrevious).Row 
Range("a1:a5000").Find(what:="*", LookIn:=xlValues, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
أما بالنسبة لإضافة العدد 1 فذلك غير صحيح ويبدو أنك لم تستوعب عمل الكود أو فكرة حد التكرار الذي شرحته فنحن نريد عد الأسطر المستخدمة ليتم التكرار بحسب عدد الأسطر ولا نريد الكتابة في الخلايا وبالتالي الكود صحيح لكن بدون إضافة العدد 1 لكن لو كان الهدف من الكود هو الكتابة في الخلية التي تلي اخر خلية مستخدمة فيجب إستبدال كلمة Row بالكلمة Value فيصبح الكود
Sheets(TSH).Range("J55555").End(xlUp).Value  + 1

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

Range("A" & R).Resize(1, 50).Copy

السلام عليكم اود معرفة شى بسيط وهذا طمع فى كرمكم ما معنى الحروف ِ R و A وا معنى الارقام 1 و 50 ارجو المساعدة وهل هذه الارقام والحروف تعنى شىء فى الشيت وجزاكم الله خيرا

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

Range("A" & R).Resize(1, 50).Copy

السلام عليكم اود معرفة شى بسيط وهذا طمع فى كرمكم ما معنى الحروف ِ R و A وا معنى الارقام 1 و 50 ارجو المساعدة وهل هذه الارقام والحروف تعنى شىء فى الشيت وجزاكم الله خيرا

السلام عليكم

===========

بداية ونهاية الاعمدة التى ستنسخ من العمود 1 الى العمود 50 يارب الصورة تكون واضحة

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

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

1.rar

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

السلام عليكم

===========

الاخت الفاضلة

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

نرجع للاخطاء

For R = 8 To Application.CountA(Range("au7:au1000")) + 18
الصح
 For R = 7 To Application.CountA(Range("a7:ak1000"))
لانك لم تستوعبى درسى الحسامى جيدا انتى حذفت الصفوف البينية فى شيت رابع اذا لا يوجد قائمتين وارجعى الى ردوده r=7 لان بداية سطر البيانات من السطر السايع وليس الثامن
    Sheets("ناجح").Cells(M, 1) = M - 7
الصح
   Sheets("ناجح").Cells(M, 1) = M - 6
على اساس ان سطور الاسطر الخارجة عن الهد 6 وليس 7
ElseIf Cells(R, 37) = "غـ" Then

انتى كتبتيها فى الكود غـ وكتبتيها فى الشيت غائب بالتالى الكود سيمر عليها ولا يتحسسها لاختلاف الاحرف

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

تحياتى لكم

2.rar

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

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

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

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

بمعنى اخر

عندما أفتح الملف يظهر رسالة بإدخال اليوزر نيم والباسورد للدخول للملف

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

السلام عليكم ورحمة الله وبركاته انى اسفة على انى اثقلت عليكم ولى طلب عند اخوانى واححبائى وهو عندما قمت بحذف الصفوف بن القائمتيين فى ششت رابع لم لم يقم الكود ةبترحيل البيانات وظلل لى باللون الاصفر If Cells(R, 37) = "ناجح" Then فما الحل ساعدونى

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

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



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

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

Important Information