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

mn20

02 الأعضاء
  • Posts

    74
  • تاريخ الانضمام

  • تاريخ اخر زياره

كل منشورات العضو mn20

  1. ارجو من الاخوة الكرام التجربة و افادتنا بابداعاتهم . . شكرا اخي انس علي على المشاركة
  2. اخي لورد لدي طريقة اتبعها .. و اعتقد ان هناك طرق افضل ... الطريقة هي : املأ خلايا مثلاً من s1 الى s41 بأرقام متسلسله من 0 الى 40 و في الخلية s42 اكتب غ ثم من الخلية التي تريد التحقق من الصحة فيها حدد ( قائمة) و حدد المنطقة من s1 الى s42 ثم موافق جرب ذلك اتمنى ان تخدمك هذه الطريقة و شكراً لك
  3. اخي العزيز لم ارى اي صورة و لكن بامكانك ادراج خانة الاختيار كالتالي : من القائمة ( عرض ) -- اشرطة الأدوات -- نماذج . يبرز أمامك شريط النماذج و يوجد به خانة الاختيار . . . . و لربطها بماكرو اضغط عليها بزر الفأرة الأيمن - تعيين ماكرو . . . . ولك التحية . . . .
  4. شكرا اساتذتي محمد طاهر و تامر اسأل الله الكريم بمنه أن يبارك لنا بشعبان و ان يبلغنا رمضان و يتمه علينا بالغفران و العتق من النيران اخوتي اسف جدا على التأخير لانشغالي قليلا
  5. بعد اذنك اخي تامر و اخي محمد طاهر و اخي علي السحيب اقدم هذا الشرح السريع و المبسط للمصفوفات هناك طريقتان لتعريف المصفوفة الطريقة الأول : مصفوفة ثابتة الأبعاد مثال ( 1 ) : Dim MyArray (3) as Integer ' مصفوفة ذات بعد واحد مكونة من أربع عناصر من النوع عدد صحيح ' إسناد القيم MyArray(0)= 0 ' القيمة الأولى MyArray(1)= 1 ' القيمة الثانية MyArray(2)= 2 ' القيمة الثالثة MyArray(3)= 3 ' القيمة الرابعة ' طريقة لإسناد القيم بحلقة فور For I =0 to 3 MyArray(I)=I Next I مثال ( 2 ) : Dim MyArray (5) as String ' مصفوفة مكونة من أربع عناصر من النوع سلسلة نصية ' إسناد القيم MyArray(0)= "m" ' القيمة الأولى MyArray(1)= "n" ' القيمة الثانية MyArray(2)= "2" ' القيمة الثالثة MyArray(3)= "0" ' القيمة الرابعة ' طريقة لإسناد القيم بحلقة فور For I =0 to 3 MyName= MyName & MyArray(I) Next I [a1].value=MyName مثال ( 3 ) : Dim a as Variant 'متغير من نوع عام A = Array(10,20,30) 'تحويل المتغير إلى مصفوفة مع إعطاء القيم B = A(2) مثال ( 4 ) : Dim MyArray (2,3) as Integer ' مصفوفة ذات أبعاد متعددة مثلا 3×4 وهي أعداد صحيحة ' إسناد القيم MyArray(0,0)= 0 MyArray(0,1)= 13 MyArray(0,2)= 24 MyArray(0,3)= 33 MyArray(1,0)= 04 MyArray(1,1)= 15 MyArray(1,2)= 25 MyArray(1,3)= 34 MyArray(2,0)= 03 MyArray(2,1)= 15 MyArray(2,2)= 24 MyArray(2,3)= 33 ' طريقة لإسناد القيم بحلقة فور For I =0 to 2 For J =0 to 2 MyArray(I,j)=i*j Next I Next I الطريقة الثانية : مصفوفة ديناميكية (متغيرة الأبعاد ) هناك أمران للتحكم في المصفوفة هما 1- للتعريف ( لاحظ لا يوجد رقم بين الأقواس ) Dim MyArray() 2- لتحديد البعد ( او تغييره ) ReDim MyArray(4) 'ثم لتغييره ReDim MyArray(10) و التعامل مع هذه المصفوفة هو نفس التعامل مع المصفوف الثابتة من إعطاء القيمة أو المعالجة مثال ( 1 ) : Dim MyArray () as Integer ' مصفوفة بدون بعد ( ديناميكية ) من النوع عدد صحيح 'الآن تحديد البعد ReDim MyArray(3) ' إسناد القيم MyArray(0)= 0 ' القيمة الأولى MyArray(1)= 1 ' القيمة الثانية MyArray(2)= 2 ' القيمة الثالثة MyArray(3)= 3 ' القيمة الرابعة ReDim MyArray (2,3) as Integer ' مصفوفة ذات أبعاد متعددة مثلا 3×4 وهي أعداد صحيحة ' إسناد القيم MyArray(0,0)= 0 MyArray(0,1)= 13 MyArray(0,2)= 24 MyArray(0,3)= 33 MyArray(1,0)= 04 MyArray(1,1)= 15 MyArray(1,2)= 25 MyArray(1,3)= 34 MyArray(2,0)= 03 MyArray(2,1)= 15 MyArray(2,2)= 24 MyArray(2,3)= 33 آمل ان أكون قد غطيت جانب من طرق التعامل مع المصفوفات و بعد اذنكم اساتاذتي تامر و محمد طاهر و علي السحيب ارفق نفس الملف بعد وضع بعض الشروحات عليه اسأل الله الكريم ان يكون نافعا ً ______________________________.zip
  6. اخي ابا عبدالله ( الجزيرة ) اشكرك على المشاركة الموضوع يحتاج تجارب و ابداعات الاعضاء و شكرا لمرور من شرفنا و اقدم اعتذاري لانشغالي قليلا عن المنتدى
  7. اولا : اريد ان اقدم عذري لانني مستجد في هذا البرنامج العريق ( الإكسيل ) . ثانيا ً : آمل ان يكون الموضوع غير مكرر . ثالثاً : صلب الموضوع عندما تكون في حاجة ماسة و عاجلة لكتابة كود معين (مثلاً ازالة الحدود عن مجموعة من الخلايا ) وأنت لا تعرف كيف تفعل ذلك اتبع الخطوات التالية : 1- اذهب الى ادوات - ماكرو - تسجيل ماكرو . 2- ضع اسماً للماكرو حسب الاستخدام - ثم موافق . 3- حدد الخلايا التي تريد ازالة الحدود عنها . 4- من تنسيخ خلايا ( قم بازالة الحدود المطلوبة ) . 5- من ادوات - ماكرو - ايقاف التسجيل. 6- من ادوات - ماكرو - محرر Visual Basic . 7- من محرر الفيجول بيسك اذهب الى Module . 8- سوف تجد الماكرو الذي سجلته . رابعاً : آمل ان تكون الخطوات السابقة واضحة . خامساً : ارجو ارفاق ابداعتكم مثلاً : Sub حذف_الحدود() ' ' ماكرو حذف_الحدود ' mn20 اضيف بواسطة ' ' Range("D8:F12").Select Range("F8").Activate Selection.Borders(xlDiagonalDown).LineStyle = xlNone Selection.Borders(xlDiagonalUp).LineStyle = xlNone Selection.Borders(xlEdgeLeft).LineStyle = xlNone Selection.Borders(xlEdgeTop).LineStyle = xlNone Selection.Borders(xlEdgeBottom).LineStyle = xlNone Selection.Borders(xlEdgeRight).LineStyle = xlNone Selection.Borders(xlInsideVertical).LineStyle = xlNone Selection.Borders(xlInsideHorizontal).LineStyle = xlNone End Sub سادساً : للجميع تحياتي و تقديري
  8. وعليكم السلام و رحمة الله وبركاته حياك الله اخوي لورد هذا الي اعرفه بالاكسيل اعذرني بس وين بالاكسس الكسر شكله طبيعي ؟ ولك تحياتي
  9. تحياتي اخي لورد ببساطة حدد الخلايا التي تريد كتابة الكسور الاعتيادية بها ثم اضغط ctrl + 1 ( أو من القائمة تنسيق - خلايا ) من التبويب اختر ( رقم ) حدد الفئة ( كسر ) ثم (طب و تخير) من القائمة( نوع )
  10. استاذي العزيز تامر تأملت ملفك و وجدت به فوائد كثيرة و يسعدني ان اوضح اهم النقاط التي استفدتها من هذا الملف : 1- ربط تنفيذ المكرو بالضغط على ( F11 ) Application.OnKey فائدة لي كبيرة جداً 2- تجميع الاوراق ثم الحذف فعلاً ابداع . 3- الاحتفاظ بحالة الاوراق المخفية و الظاهرة نقطة مهمة و لم اجرب بعد الكود الذي وضعته هل يمسح الصف من الاوراق المخفية 4- الامر ( Application.ScreenUpdating ) جديد علي لاني مستجد بالاكسيل ( برمجة الاوفس ) و لا زلت اتأمل في الكود فعلاً عمل ابداعي من استاذ قدير شكراً جزيلاً اسأل الله ان يغفر ذنبك و ييسر أمرك .... آمين
  11. حفظك الله اخي يرموك لقد عدلت في الملف وأرفقته ارجو ان يكون المطلوب ،أو يقدم بعض المساعدة لانجاز المطلوب ، و آمل ان تكون ثرثرتي فيه واضحة و تستفيد منها و كل الزملاء كما ارجو منك ياستاذي العزيز تامر ( tameromar ) ان توجهني باقتراحاتك لاني من أكثر اعضاء المنتدى تتبعاً لمواضيعك و المستفيدين منها رفع الله قدرك في الدنيا و اللآخرة .. آمين . ولكم من و لجميع اعضاء المنتدى فائق تحياتي . Rased2.zip
  12. اخي يرموك سامحك الله الملف الذي ارفقته بعض صفحاته عليها حماية بكلمة مرور ارفق لك محاولتي و أسأل الله ان تقدم لك بعض المساعدة Rased.zip
  13. اخي يرموك بعد التحية بامكانك استخدام الكود التالي لحذف صف و الاخر لحذف عمود في نفس الصفحة الحالية للاكسيل لحذف العمود "D" الكود التالي Columns("D:D").Select Selection.Delete Shift:=xlToLeft لحذف الصف الخامس الكود التالي Rows("5:5").Select Selection.Delete Shift:=xlUp و إذا كان عدد الصفحات كبير بامكانك استخدام حلقة For Each ..... Next انا مشغول قليلاً لعلي أجد وقت أتمكن من دمجها مع ملفك و الخوان في هذا المنتدى سباقين للمساعدة
  14. الشكر لجميع من شارك أو اطلع و خصوصا الاخوين tameromar و nse جزاهما الله كل خير الملف المرفق هو نفس الملف بعد التعديل ارجو ان يكون فيه النفع لي و لجميع الزملاء اعضاء المنتدى mn20__p1.zip
  15. شكرا جزيلا مرة اخرى اخي tameromar الامر الذي كنت ابحث عنه هو ( DoEvents ) جزاك الله الف خير هذا ما كنت ابحث عنه بضبط بعد تعديل الملف سارفقه ان شاء الله
  16. شكرا جزيلا اخي tameromar على نجدتك و نسأل الله الكريم ان ينفعنا جميعا بما في خزانتك في الدنيا و الاخرة جاري تجربة ملفكم لا عدمناكم
  17. اشكرك اخي nse على سرعة الاستجابة و جهدك مشكور و لكن المطلوب هو : نلاحظ عندم نريد حفظ ملف اكسل مثلاً هناك في اسفل اليمين من الشاشة على ( شريط المعلومات ) نرى مؤشر اخضر يتحرك ليحدد مدى التقدم في عملية الحفظ ، ثم يختفي عن نهاية الحفظ ، و هذا هو المطلوب . في الملف الذي ارفقته عملية مثلتها بثلاث حلقات for ، و عند تفعيل الامر stop و النظر الى المربع FormWait تلاحظ التقدم عليه . اذا المشكلة في حالة الاستمرار لا نرى هذا التقدم إلا في نهاية العملة . اتذكر عندما كنت مولعاً بالفيجول بيسك VB ثلاثة ثم خمسة كان هناك امر يوضع للسماح برسم الفورم و توضيح الاثر عليه ، و لكن انا مستجد في الاكسيل :') لذلك ارجو المحاولة مرة اخرى نسأل الله الن ييسر هذا الامر .
  18. عفوا هنالك خطأ في الملف السابق ارفق لكم الملف بعد التعديل mn20__p1.zip
  19. عملت ببرنامج الاكسل ملف يقوم بعمليات معقدة قليلاً و تستغرق تقريباً من ثلاث إلى خمس دقائق . و اثناء هذه العمليات يتوقف الاكسيل عن الاستجابة لذلك انا في امس الحاجة لاداة تعرض اثناء هذه العمليات مدى التقدم . و ارفقت مع الموضوع ملف صغير يوضح بعض محاولاتي اليائسة :') ارجو من اساتذتنا الكرام في هذا المنتدى سرعة اسعافي ____________________.zip
  20. السلام عليكم ورحمة الله وبركاته أخي الكريم hs889 أرجو التفضل بإرسال البرنامجين على بريدي التالي alhn1@hotmail.com لان الموقع http://www.sendspace.com/file/u2az5g محجوب لدينا
  21. السلام عليكم ورحمة الله وبركاته أخي الكريم hs889 أرجو التفضل بإرسال البرنامجين على بريدي التالي alhn1@hotmail.com
×
×
  • اضف...

Important Information