VBA Sub | كيفية استدعاء الإجراء الفرعي في كود VBA؟

الإجراء الفرعي لـ Excel VBA

يُعرف SUB في VBA أيضًا باسم روتين فرعي أو إجراء يحتوي على جميع التعليمات البرمجية ، وهو عبارة مضمنة في VBA وعند استخدامه يعطينا تلقائيًا بيان end sub ويتم استخدام الجزء الأوسط للتشفير ، ويمكن أن يكون البيان الفرعي كل من العام والخاص واسم الإجراء الفرعي إلزامي في VBA.

الفرعية تعني إجراء فرعي في VBA. يتم استخدام الإجراءات الفرعية لأداء مجموعة محددة من المهام المقدمة في شكل رمز. يقوم فقط بالمهمة المذكورة في الكود وفقًا للغة VBA ولكنه لا يُرجع أي نوع من القيمة.

كيف تكتب إجراءات VBA الفرعية؟

يمكنك تنزيل نموذج إجراء VBA الفرعي هذا هنا - نموذج إجراء VBA الفرعي

من أجل كتابة أكواد الإجراءات الفرعية ، من المهم فهم بنية الإجراء الفرعي. يوجد أدناه الهيكل

فرعي [اسم الإجراء] (معلمات) [ما الذي يجب عمله؟]) End Sub

لبدء الإجراء الفرعي ، نحتاج إلى استخدام كلمة "Sub" ونحتاج إلى إعطاء اسم لـ Sub كاسم إجراء. اسم الإجراء ليس سوى اسم الماكرو الخاص بنا. في الإجراء الفرعي لـ VBA ، ليس لدينا عادةً معلمات داخل الأقواس.

بعد كتابة اسم الإجراء الفرعي ، نحتاج إلى كتابة المهام التي يجب القيام بها. ثم تأتي جملة End ، مثل End Sub.

مثال # 1 - إجراء فرعي بسيط

الآن ألق نظرة على طرق كتابة الإجراءات الفرعية البسيطة.

الخطوة 1: ابدأ كلمة "Sub" في الوحدة.

الخطوة 2: الآن قم بتسمية اسم الماكرو أو اسم الإجراء.

الخطوة 3: بعد إعطاء الاسم للإجراء الفرعي ، فقط اضغط على مفتاح الإدخال ، سيتم تطبيق بيان النهاية تلقائيًا.

الآن يمكننا أن نرى شيئين هنا أحدهما هو البداية والآخر هو نهاية الإجراء الفرعي. لفهم أفضل ، يمكننا تسميتها "الرأس" و "الذيل".

بين رأس الماكرو وذيله ، نحتاج إلى كتابة الكود الخاص بنا لأداء بعض المهام.

مثال # 2 - مهمة روتين فرعي بسيطة

حسنًا ، سنرى الآن كيفية تنفيذ بعض الإجراءات البسيطة هنا.

افترض أنك تريد إدراج القيمة "Excel VBA" في الخلية A1.

الخطوة 1: ابدأ الإجراء الفرعي باستخدام الطرق المذكورة أعلاه.

رمز:

 الإجراء الفرعي 1 () End Sub 

الخطوة 2: للوصول إلى الخلية A1 ، نحتاج إلى استخدام كلمة RANGE.

رمز:

 الإجراء الفرعي 1 () النطاق (End Sub 

الخطوة 3: يسأل ما هي الخلية 1 التي تريد الرجوع إليها؟ في هذه الحالة ، تكون خلية A1.

رمز:

 الإجراء الفرعي 1 () النطاق ("A1") End Sub 

الخطوة 4: نحتاج إلى إدخال القيمة "Excel VBA" ، لذا حدد خاصية VALUE بوضع نقطة بعد النطاق.

رمز:

 نطاق الإجراء 1 () ("A1"). قيمة نهاية فرعية 

عندما تبدأ في كتابة الكلمة VALUE ، سترى العديد من الخيارات وتسمى هذه الخيارات قائمة IntelliSense التي تتنبأ بناءً على ما تكتبه. هذا يشبه كيف ستظهر الصيغ في ورقة العمل عندما نبدأ في كتابة الصيغة.

الخطوة 5: بعد تحديد VALUE ، ضع علامة يساوي وأدخل القيمة في علامتي اقتباس مزدوجتين كـ “Excel VBA”.

رمز:

 نطاق الإجراء الفرعي 1 () ("A1"). القيمة = "Excel VBA" End Sub 

لذلك انتهينا.

الآن نحن بحاجة إلى تنفيذ هذه المهمة. لتنفيذ المهمة التي قمنا بإعادتها ، نحتاج إلى تشغيل هذا الرمز عن طريق الضغط على زر RUN في نافذة محرر Visual basic.

يمكننا أيضًا الضغط على مفتاح اختصار excel عن طريق وضع المؤشر داخل كود الماكرو.

بمجرد تشغيل الكود ، ستحصل على القيمة "Excel VBA" في الخلية A1.

أنواع الروتين الفرعي VBA

لدينا نوعان آخران في الإجراء الفرعي الأول هو الإجراء الفرعي العام والآخر هو الإجراء الفرعي الخاص.

الكلمتان "عام" و "خاص" عبارة عن معدّلات إمكانية الوصول تسمح لنا باستخدامهما إجراءات فرعية بشكل مختلف.

  • يسمح لنا الإجراء الفرعي العام باستخدام الإجراء في جميع وحدات المصنف.
  • يسمح لنا الإجراء الفرعي الخاص باستخدام الإجراء فقط في الوحدة الحالية ، وليس في أي مكان آخر.

على سبيل المثال ، انظر إلى الصورة أدناه للرمز العام والموجودة في الوحدة 1.

الآن في الوحدة 2 يمكنني أيضًا استخدام هذا الإجراء الفرعي.

الإجراء 1 هو اسم الإجراء الفرعي الذي استخدمناه في الوحدة 1.

في الوحدة الثانية ، أشرت إليها باسم "Call Action 1". هذا يعني أنه عند تشغيل الإجراء الفرعي ، سيتم تنفيذ الإجراء الفرعي 1 من الوحدة النمطية 1.

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


$config[zx-auto] not found$config[zx-overlay] not found