معتصم محمد قام بنشر يناير 17, 2011 قام بنشر يناير 17, 2011 بسم الله الرحمن الرحيم السلام عليكم ورحمة الله وبركاته كان لدي سؤال عن كتابة اكواد الفيجوال بيسك في الإكسل حين انتقل لل VBE يوجد لدي عدة إختيارات لموضع كتابة الأكواد وهم Module Sheet ThisWorkbook فما الفرق الذي يحدث إذ ادرجت الكود في اى عنصر من العناصر السابقة؟
عبد الفتاح كيرة قام بنشر يناير 17, 2011 قام بنشر يناير 17, 2011 (معدل) Module لكتابة كود منفصل يمكن استدعاؤه من أى مكان Sheet كود مخصص لأحداث الصفحة كحدث تنشيط activate الصفحة أو حدث التغيير change " تغيير قيمة أى خلية " وغيرهما ThisWorkbook أكواد تنفذ فى أحداث المصنف و هذه تشمل طبعا كل الشيتات و يمكن أن نضع فيه كودا ينفذ فى أحد الصفحات لكن ينفذ عند أحد أحداث المصنف فالكود واحد فى الثلاثة لكن الحدث مختلف لارتباطه بأحد الأنواع وكمثال عملى : الكود range("a1")="kemas" نضعه فى Module و نخصص له زر أمر ينفذه هذا الزر فى أحد الصفحات طبعا أو حتى فى نموذج " فورم" نضعه فى أحد أحداث شيت معين و ليكن الحدث activate فعند تنشيط هذه الصفحة يتم تنفيذ الكود فى الخلية المحددة " انتبه لحدث التنفيذ" و نضعه فى ThisWorkbook فسينفذ عند فتح المصنف و لذلك يجب أن نزيد عليه اسم الورقة التى بها الخلية المقصودة فيصير sheets(1).range("a1")="kemas" هنا ينفذ الكود عند فتح المصنف وفى الورقة رقم 1 والخلية a1 فيها هذا ما تيسر لى شرحه الآن أرجو أن تكون انتفعت بذلك تم تعديل يناير 17, 2011 بواسطه kemas
ابو القبطان قام بنشر يناير 17, 2011 قام بنشر يناير 17, 2011 استاذ : كيماس شرحك دائما ، وكما تعودنا رائع .. واكثر من رائع بارك الله فيك
عبد الفتاح كيرة قام بنشر يناير 17, 2011 قام بنشر يناير 17, 2011 الأخ zine pef بارك الله فيك و شكرا لك الأخ new4a شكرا لك و بارك الله فيك أحببت أن أضيف أنه لابد لمن يكتب الأكواد أن يجيب عن سؤالين الأول أين سينفذ الكود ( مصنف ورقة نموذج أداة تحكم " كنترول " .." الثانى : متى سينفذ الكود ؟ و هذا يقصد به الحدث فتكون الإجابة مثلا: فى المصنف - عند فتحه فى الشيت عند تنشيطه فى الشيت عند تغيير قيمة أى خلية فى الشيت عند حساب الورقة فى النموذج عند تشغيله فى مربع النص عند الكتابة فيه فى الليست بوكس عند تحديد قيمة فيها فى الصورة عند مرور الماوس عليها و هكذا أما إجابة السؤال الأول فتكون فى القسم الأيسر من القائمة وأما الحدث فيكون فى القسم الثانى على اليمين الصورة
يوسف عطا قام بنشر يناير 17, 2011 قام بنشر يناير 17, 2011 الأخ العزيز كيماس تحية وشكر وتقدير مبدع دائماً فى شرحك هل تسمح بترجمة جميع الأحداث الموجودة فى القائمة المنسدلة ؟؟ قد يفيد ذلك بعض المبتدئين أمثالى وكذلك فى القائمة المنسدلة الأخرى (مكان تنفيذ الكود) توجد خيارات متعددة أرجو ترجمتها مع شرح كل إختيار جازاك الله خير
معتصم محمد قام بنشر يناير 17, 2011 الكاتب قام بنشر يناير 17, 2011 (معدل) أستاذ / كيماس جزاك الله خيراً على هذ هالمعلومات القيمة، جعلها في ميزان حسناتك بإن الله بعض الأسئلة آلا يمكن تنفيذ كود مدرج في Module عند وقوع حدث معين مرتبط بأحد الأحداث الخاصة بالشيت أو بملف الإكسل ذاته Sheets("Sheet 02").Range("a2").Value = 111 فهل يمكن تنفيذه عند تنشيط ورقة العمل 1 إذا كان من الممكن أن أدرج كود في العنصر ThisWorkbook وسيتم تنفيذه على اى شيت في ملف الإكسل (حسب الكود المكتوب طبعاً) فمتى الجأ لكتابة الكود في الموديل بطريقة أخرى هل لكتابة الكود في الموديل مميزات عن كتابة الكود في العنصر ThisWorkboo شكراً مرة أخرى على سرعة التجاوب تم تعديل يناير 17, 2011 بواسطه al m3tasem
عبد الفتاح كيرة قام بنشر يناير 17, 2011 قام بنشر يناير 17, 2011 (معدل) مرحبا أخ يوسف إذا ضربت عدد الأماكن فى الأحداث الخاصة بكل منها سينتج عدد كبير من العناصر لكن سأذكر لك أهم حدث فى كل عنصر بالنسبة للورقة الشيت أهم حدث هو التنشيط activate و التغيير change أما الفورم فأهم أحداثه حدث انطلاق الفورم يعنى تشغيله initialize وفى هذا الحدث نضع كل ما نريد تنفيذه على أدوات التحكم كمربعات النصوص و غيرها و كذلك تحديد المدى من الخلايا أو الأكثر و كثير جدا بحيث يكون كل هذا ظاهرا و جاهزا عند انطلاق الفورم بالنسبة للأدوات زر الأمر حدثه الأهم و الافتراضى هو النقر click أما مربع النص فأهم أحداثه change التغيير و هذا لا يقلل من أهمية الأحداث الأخرى فأنت تحتاج إليها حسب الكود الذى تكتبه و هناك أحداث يندر استعمالها مثل presskey وهو مختص بضغط أى زر من لوحة المفاتيح إذا وضعت فى ذهنك السؤالين اللذين شرحناهما ستزيد قدرتك على فهم الأكواد المكتوبة أما ما سيقابلك من أحداث جديدة عليك فشأنها سهل لأن القاعدة العامة موجودة و الله أعلم تم تعديل يناير 17, 2011 بواسطه kemas
عبد الفتاح كيرة قام بنشر يناير 17, 2011 قام بنشر يناير 17, 2011 أخى معتصم الكود المكتوب فى المودويل غير مرتبط بعنصر ( ورقة أو مصنف ....) و غير مرتبط بحدث لكن هذا لا يمنع أن نشير من داخله لأى من هذه العناصر نشير لورقة أو فورم مثلا userform1.show كود يستدعى نموذج هذه وظيفته يمكنك إسناده لزر أمر بحيث ينفذ عند نقر الزر مثلا كما يكتب بالمودويل الوظائف التى يمكن استدعاؤها بدلالة اسمها و معاملاتها
معتصم محمد قام بنشر يناير 19, 2011 الكاتب قام بنشر يناير 19, 2011 شكراً استاذ / كيماس على التجاوب لكن اريد ان اعرف إذا كان من الممكن أن أدرج كود في العنصر ThisWorkbook وسيتم تنفيذه على اى شيت في ملف الإكسل (حسب الكود المكتوب طبعاً) فمتى بتم اللجوء لكتابة الكود في الموديل بطريقة أخرى هل لكتابة الكود في الموديل مميزات عن كتابة الكود في العنصر ThisWorkboo
عبد الفتاح كيرة قام بنشر يناير 19, 2011 قام بنشر يناير 19, 2011 (معدل) إذا كان من الممكن أن أدرج كود في العنصر ThisWorkbook وسيتم تنفيذه على اى شيت في ملف الإكسل نعم ممكن وميزة ذلك أن يتم التنفيذ مع أحد أحداث المصنف ككل و ليس الشيت مثال الكود التالى يؤدى مهمتين الأولى تجميد الشاشةفى شيت الرئيسة و هو أحد شيتات المصنف الثانية يبدأ فتح الملف على شيت الرئيسة دون غيره Private Sub Workbook_Open() Sheets("الرئيسة").ScrollArea = "a1:c10" 'If ActiveSheet.CodeName <> "الرئيسة" Then Sheets("الرئيسة").Select 'End If End Sub هنا المطلوب التحكم فى شيت و مواصفاته فالسبيل إلى ذلك هو أبو الشيت أقصد الأعلى منه فى المستوى و هو المصنف هذا مثال أما الكود فى المودويلات فمكانه عام أنت تخصص له مكانا كزر أمر أو غيره و يستدعى عند الحاجة مثلا كود لفتح نافذة عن طريق زر أمر لا يناسب وضعه فى المصنف لأن استدعاء هذه النافذة له وقته فى البرنامج مثلا الكود السابق يمكن وضعه فى مودويل لكن يتم استدعاؤه من نفس المكان وهو فتح المصنف لأن الأكواد التى فى المودويلات لا يتم فتحها مباشرة لكن يتم استدعاؤها من الكائنات المرتبطة بها و الله أعلم تم تعديل يناير 19, 2011 بواسطه kemas 1
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.