إغلاق VBA UserForm | أهم طريقتين لإغلاق Userform بالأمثلة

عندما نقوم بإنشاء نموذج مستخدم ، فإنه يأخذ البيانات كمدخلات من المستخدمين ، ولكن البيانات المقدمة إلى النموذج لا تغلق نفسها ، لذلك يمكن أن تضلل المستخدم لإدخال البيانات مرة أخرى ، نستخدم أمرين مختلفين لإغلاق نموذج المستخدم عندما يكون الإدخال تم إعطاؤهم وهم طريقة Unload me لإغلاق نموذج مستخدم أو يمكننا استخدام طريقة userform.hide.

Excel VBA أغلق Userform

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

في هذه المقالة ، سنوضح لك كيفية إغلاق نموذج المستخدم في ترميز VBA.

كيفية إغلاق UserForm في Excel VBA؟

بمجرد الانتهاء من الغرض من نموذج المستخدم ، هناك نقطة في الاستمرار في إظهار نموذج المستخدم أمام المستخدم ، لذلك نحتاج إلى إغلاق نموذج المستخدم. يمكننا إغلاق نموذج المستخدم باستخدام عبارة "Unload Me" وعبارات "UserForm.Hide". على الرغم من اختلاف كليهما قليلاً عن بعضهما البعض ، إلا أنه سيخدم غرضنا في النهاية.

يمكنك تنزيل VBA Close UserForm Excel Template هنا - VBA Close UserForm Excel Template

# 1 - أغلق Userform باستخدام بيان "Unload Me" في VBA

على سبيل المثال ، انظر إلى الصورة أدناه لنموذج المستخدم.

لقد قمت بتسمية نموذج المستخدم باسم "MyUserForm".

إذا قمت بتشغيل نموذج المستخدم ، فسنرى نموذج المستخدم كما هو موضح أدناه.

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

عند النقر فوق زر الإرسال ، تم التقاط البيانات التي أدخلتها في نموذج المستخدم.

إذا لاحظت أن لدينا زرًا آخر يسمى "إلغاء". ماذا يفعل هذا؟

قبل أن نعرض نموذج المستخدم ، نحتاج إلى تكوين هذا الزر. الآن سأعود إلى محرر Visual Basic لتكوين هذا الزر.

الآن سوف أنقر نقرًا مزدوجًا على زر إلغاء وسيفتح الإجراء الفرعي التلقائي لـ VBA كما هو موضح أدناه.

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

لذا ، اكتب الكود كـ "Unload Me".

رمز:

 Sub.Putton_Click () Unload Me End Sub 

"Unload Me" هي الكلمة التي نستخدمها لإغلاق نموذج المستخدم الذي نعمل عليه. هنا يتعرف نموذج المستخدم على كلمة "أنا" على أنها UserForm نفسها.

يمكن استخدام "Unload Me" فقط في إجراء نموذج المستخدم هذا ، ولا يمكننا استدعاء هذه العبارة في الوحدات النمطية الأخرى. إذا تم استدعاؤها ، فستظهر رسالة الخطأ على أنها " استخدام غير صالح للكلمة الرئيسية الخاصة بي ".

حسنًا ، لنقم بتشغيل الكود باستخدام المفتاح F5 أو يدويًا الآن ، سنرى نموذج مستخدم فارغًا.

املأ البيانات وانقر فوق إرسال.

بمجرد النقر فوق زر الإرسال ، سيتم تخزين القيم في الخلايا المذكورة.

إذا تم إدخال البيانات ، نحتاج إلى إغلاق نموذج المستخدم ، أليس كذلك ؟؟

لذلك ، انقر فوق الزر إلغاء لإغلاق نموذج المستخدم ، فسيتم إغلاق نموذج المستخدم.

# 2 - أغلق UserForm باستخدام Hide Method في Excel VBA

يمكننا أيضًا إغلاق Userform باستخدام طريقة "Hide" أيضًا في VBA. الآن مرة أخرى سوف أنقر مرتين على زر الإلغاء لرؤية الإجراء الفرعي الخاص.

نظرًا لأننا كتبنا بالفعل الكود لإغلاق نموذج المستخدم ، يمكننا رؤية الكود الحالي في VBA. الآن سأحذف هذا.

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

بعد ذكر نموذج المستخدم باسمه إذا وضعنا نقطة (.) يمكننا رؤية جميع خصائص وطرق نموذج المستخدم هذا. الآن سأختار طريقة "إخفاء".

حسنًا ، لنقم بتشغيل نموذج المستخدم مرة أخرى. سنرى نموذج مستخدم فارغ ، املأ التفاصيل أولاً.

الآن بدون الضغط على زر إرسال ، سأضغط على زر الإلغاء ، وسوف يخفي نموذج المستخدم.

الفرق بين التفريغ والإخفاء في Excel VBA

يجب أن يكون لديك سؤال ما هو الفرق بين Unload & Hide ، حيث يخدم كلاهما غرضًا مشابهًا. هناك فرق بين هذين. الآن سأستخدم بيان Unload Me أولاً. انظر إلى الصورة أدناه.

لقد أدخلت البيانات في نموذج المستخدم ولكني لم أرسلها بعد. إذا قمت بالنقر فوق "إلغاء الأمر" ، فسيتم إلغاء تحميل نموذج المستخدم.

الآن مرة أخرى ، سأقوم بتشغيل الكود من خلال مفتاح اختصار Excel F5 أو يدويًا ، سيعرض نموذج مستخدم فارغًا.

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

الآن سأستخدم طريقة "إخفاء".

لا ، سأضغط على زر الإلغاء ، وسوف يخفي نموذج المستخدم المرئي. ولكن عندما أعيد تشغيل الماكرو ، فإنه سيعود بالبيانات التي أدخلتها بالفعل في نموذج المستخدم.

هذه هي الطريقة التي يمكننا بها استخدام طريقة "Unload" و "Hide" لإغلاق نماذج المستخدم في Excel VBA.


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