Anwar قام بنشر يونيو 11, 2004 قام بنشر يونيو 11, 2004 الاخ الاعزاء في المنتدي العزيز اريد عمل ماكرو يقوم يالتالي يبدا البحث من اول خلية في العمود الي اخر خلية مكتوب فيها وعندما يجد خلية فيها رقم يذهب الي الخلية التي علي يمينها ويكتب الرقم 1 ثم يواصل العمل علي باقي الخلايا واذا وجد الخلية فارغة يواصل البحث الي الخلية التالية وهاكذا اخوتي حاولت قبل طرح السؤال ولكن كل محاولات فشلت ولقد استفدت من ملفات الاستاذ محمد طاهر والاستاذ حسام نور حاولت تطبيق الدالتين FOR و NEXT ولكن كل المحاولات فشلت الملف الذي اعمل عليها كبير جدا لذلك لابد من تصميم ماكروا يقوم هو بالعمل خصوصا اني عندي 7 اعمدة علي عدد ايام الاسبوع وكل عمود بة بيانات حوالي 1520 صف مما يجعل التعديل عليها كلها صعب ارجو المساعدة والاجر عند اللة
gelani قام بنشر يونيو 12, 2004 قام بنشر يونيو 12, 2004 حاول باستخدام if الشرطية بحيث يكون الأمر كالتالي :- مثلا العمود الذي به البيانات b اذهب للعمود المجاور a ومن شريط الأدوات استخدم if الشرطية بحيث إذا كانت قيمة الخلية المجاورة أكبر من صفر يعطي رقم 1 . if b1>0 1 " " أرجو أن يكون هذا المقصود .
Anwar قام بنشر يونيو 13, 2004 الكاتب قام بنشر يونيو 13, 2004 اشكرك اخي الكريم علي الرد ولكن هذا ليس حل اذا كان يوجد لدي اكثر من 1520 صف كلها فيها ارقام اسهل من ذلك ان اقوم شخصيا بتعديل لانني سوف اكتب في كل عمود الدالة if الشريطية ولكن اذا حصلت علي كود اقوم فقط بتحدي بداية العمود الذي سوف يعمل عليها يكون افضل واسرع ارجو المساعدة في عمل الكود
gelani قام بنشر يونيو 14, 2004 قام بنشر يونيو 14, 2004 اذا تم العمل كما ذكرنا سابقا. فقط قم بالسحب الى الحد الذي تريد وسيتم تطبيق الكود على الجميع. لأنني استخدم هذه الطريقة في عملي وناجحة جدا . ارجو أن يكون هناك طريقة اخرى من احد اعضاء هذا المنتدى الرائع. حاول ونحن في انتظارك ولا تيأس. وفقك الله.
السيد عبد العال قام بنشر يونيو 14, 2004 قام بنشر يونيو 14, 2004 أخى الفاضل رغم اقتناعى بعدم وجود ضرورة لهذه الماكرو والأفضل هو استخدام المعادلات العادية والطرق الموجودة فى الاسك كما \اشار الأخوة سابقا إليك الماكرو المطلوبة يتم اختيار الخلايا كلها ثم تشغيل الماكرو Sub MarkBside() Dim cCell As Range For Each cCell In Selection If cCell.Formula <> "" Then cCell.Offset(0, 1).Value = 1 Next End Sub
Anwar قام بنشر يونيو 15, 2004 الكاتب قام بنشر يونيو 15, 2004 شكر استاذ سيد الماكرو السابق يعمل بشكل صحيح وللرد حول الاستفسار اذا وضعت معادلة في نفس الخلايا فان المعادلات اذا كثرت في الصفحة تثقل من عمل الجهاز وكذلك هي موقت لاضافة تعديل فقط ويجب بعد التعديل ان تحذف ورايت الانسب هو عمل ماكرو جتي لو تم حذف فلن يؤثر علي عمل الحسابات اما حذف المعادلة فسيتم حذف النتائج المترتبة عليها وايضا الماكرو واحد يعطي النتائج علي مجموعة كبيرة من الخلايا بينما كل خلية لها معادبة خاصة بها شكرا استاذ سيد ويعطكم الف عافية لي سؤال هل من الضرور بعد كلمة Next ان نتكب القيمة المتغيرة لانك لم تستخدم هذا الاسلوب واغلب ملفات الاستاذ محمد طاهر كانت تستخدم ارجو التوضيح
السيد عبد العال قام بنشر يونيو 15, 2004 قام بنشر يونيو 15, 2004 ليس ضروريا يا أخى ولكن يفضل كتاباتها لسهولة المراجعة والتعديل خاصة حينما تكثر هذه ال Loops ويقوم البرنامج بالبحث عن كل كلمة next المقابلة لكل كلمة for تم استخدامها ويرسل رسالة خطأ عند وجود عدم تطابق الجدير بالذكر هنا أنه عند فتح for ثم فتح For أخرى داخلها فيجب أغلا ق الثانية ثم الاولى
الردود الموصى بها