عناصر تحكم VBA في Excel: النماذج و ActiveX
⚡ ملخص ذكي
VBA Controls in Excel are the interactive elements, such as buttons, check boxes, and text boxes, that build a graphical user interface. This page explains Form controls, ActiveX controls, how the two families differ, and a step-by-step ActiveX command button example.

عناصر تحكم VBA: التحكم في نموذج VBA وعناصر تحكم ActiveX في Excel
عناصر تحكم نموذج VBA/واجهة المستخدم الرسومية في Excel
GUI هو اختصار لـ Graphical User Interface (واجهة المستخدم الرسومية). واجهة المستخدم الرسومية هي جزء البرنامج الذي يتفاعل معه المستخدم. تتكون واجهة المستخدم الرسومية من عناصر تحكم. يمكن استخدام عناصر تحكم VBA في Excel في نموذج. يوضح الجدول التالي بعض عناصر تحكم VBA الأكثر استخدامًا في واجهة المستخدم الرسومية.
| S / N | السيطرة | الوصف |
|---|---|---|
| 1 | أمر | تستخدم لتنفيذ التعليمات البرمجية |
| 2 | كومبو Box | تستخدم لتقديم قائمة منسدلة للمستخدمين |
| 3 | تحقق Box | تُستخدم للقيم الصحيحة أو الخاطئة. يمكن أن تحتوي مربعات الاختيار المتعددة على قيم صحيحة في نفس الوقت. |
| 4 | قائمة Box | تستخدم لتقديم قائمة بسيطة للمستخدمين |
| 5 | نص Box | يستخدم لقبول إدخال المستخدم |
| 6 | شريط التمرير | يستخدم لتوفير شريط التمرير لأغراض التنقل. |
| 7 | زر الدوران | يُستخدم لزيادة أو تقليل القيم الرقمية من خلال النقر على الأسهم لأعلى أو لأسفل التي تظهر في زر الدوران |
| 8 | زر الخيارات | تستخدم للقيم الحقيقية أو الخاطئة. يمكن أن يكون لزر خيار واحد فقط قيمة حقيقية في المرة الواحدة. |
| 9 | تُشير | يستخدم لعرض نص ثابت للمستخدم |
| 10 | صورة | يستخدم لعرض الصور |
| 11 | Togglزر البريد | الزر الذي تم الضغط عليه وحالات عدم الضغط عليه. |
في عنصر تحكم VBA GUI،
- انقر فوق علامة التبويب المطور
- انقر على زر إدراج القائمة المنسدلة
سوف تحصل على اللوحة المنسدلة التالية
إذا قمت بتمرير الماوس فوق عناصر تحكم نموذج VBA، فسيظهر اسم عنصر التحكم كما هو موضح أدناه
إضافة عناصر تحكم واجهة المستخدم الرسومية إلى جدول بيانات
سنقوم الآن بإضافة زر أمر إلى المصنف الخاص بنا، لذلك يتعين علينا القيام بذلك
- انقر على القائمة المنسدلة "إدراج".
- انقر على زر الأمر (تحكم ActiveX) كما هو موضح في الصورة أعلاه
- اسحب وارسم الزر الموجود على الورقة
ضبط خصائص التحكم في واجهة المستخدم الرسومية
سنقوم الآن بتعيين التسمية التوضيحية للزر على شيء أكثر وصفًا
- انقر بزر الماوس الأيمن على زر المساواة الذي أنشأناه للتو
- حدد قائمة الخصائص
- سوف تحصل على نافذة الخصائص التالية
- قم بتعيين خاصية الاسم إلى btnButton. يتم استخدام خاصية الاسم لتعريف عنصر التحكم في إطار التعليمات البرمجية. btn هي البادئة للزر.
- قم بتعيين خاصية التسمية التوضيحية إلى Click Me. النص الموجود في خاصية التسمية التوضيحية هو ما سيراه المستخدمون على الزر.
أغلق النافذة عند الانتهاء.
سوف تحصل على النتائج التالية
Difference Between Form Controls and ActiveX Controls
Excel offers two families of controls, and choosing the right one keeps a project simple. Form controls are built into Excel and run a single assigned macro, while ActiveX controls are programmable objects that respond to many events through VBA code. The table below compares the two.
| الميزات | شكل عناصر التحكم | عناصر تحكم ActiveX |
|---|---|---|
| اقامة | Simple; assign one macro to the control | Requires VBA event code to respond |
| عقارات | Limited set of options | Extensive, including font, colour, and behaviour |
| الفعاليات | Single action on click | Many events such as Click, Change, and GotFocus |
| التوافق | يعمل على Windows and Mac Excel | يعمل على Windows إكسل فقط |
| أفضل مناسبة ل | Quick, simple worksheet tasks | Interactive and dynamic user forms |
In short, use a Form control when a single macro is enough, and choose an ActiveX control when the interface needs rich properties or must react to several user events.
بشرط اساسي
Before building the ActiveX example, prepare the workbook so the controls are available and the macros can be saved.
ضبط Microsoft Excel
كما رأينا في البرنامج التعليمي السابق، تأكد من أن الشريط الخاص بك سيحتوي على أيقونة "المطور" كما هو موضح هنا.
الآن، أعد تسمية الورقة 1 إلى "VBA Operator” as shown in screen-shot below. Save the workbook in an Excel Macro-Enabled Workbook (*.xlsm) file extension. (see the image below)
بعد ذلك قم بالضغط على زر حفظ.
كيفية استخدام عنصر تحكم ActiveX في VBA
With the workbook ready, we can add a working ActiveX button. In this section of ActiveX control Excel, we will see how to incorporate ‘commandclick’ button in VBA and execute a program using the button.
الخطوة 1) في هذه الخطوة، انقر فوق خيار "زر الإدراج" من عنصر التحكم Active X. ثم حدد خيار زر الأمر منه.
الخطوة 2) لإدراج "clickcommandbutton1" اسحب مؤشر الماوس إلى ورقة Excel.
الخطوة 3) ثم انقر بزر الماوس الأيمن على زر الأمر وحدد الخيار "عرض". Code".
الخطوة 4) تأكد من أنك على الورقة الصحيحة. سيتم فتح محرر التعليمات البرمجية. ادخل رمزك.
- في الكود، حددنا النطاق من A1 إلى A10.
- يحدد هذا النطاق رقم الخلية في ورقة Excel من "A1 إلى A10".
- بعد ذلك، نُعرّف السلسلة "Guru"99 برنامج تعليمي في VBA" في الكود
- لذا، عند النقر على زر "الأمر" في برنامج إكسل، يجب أن يطبع "Guru"99 VBA Tutorial" في نطاق الخلايا "A1 إلى A10".
الخطوة 5) في الخطوة التالية، احفظ ملف التعليمات البرمجية ثم اخرج من المحرر. للعودة إلى ملف Excel، انقر فوق أيقونة ورقة Excel في أقصى اليسار.
الخطوة 6) في ورقة Excel، سترى علامة التبويب "وضع التصميم" قيد التشغيل. تأكد من أنه "متوقف" وإلا فلن يعمل الرمز الخاص بك.
الخطوة 7) عند إيقاف وضع التصميم، لن يكون هناك تمييز باللون الأخضر عليه. الآن يمكنك النقر على زر الأمر.
الخطوة 8) انقر على "CommandButton1". سيتم طباعة "Guru"99 VBA Tutorial" في نطاق الخلايا "A1 إلى A10".
قم بتنزيل Excel الذي يحتوي على الكود أعلاه
Common ActiveX Control Events in VBA
An ActiveX control is powerful because it reacts to events, which are actions the user performs on the control. Each event runs its own subroutine, so the same button can behave differently depending on what the user does. The most common events are listed below.
- انقر – runs the code when the user clicks the control, the event used in the example above.
- التغيير – runs when the value of a control changes, such as typing in a text box or picking a combo box item.
- GotFocus / LostFocus – runs when the control gains or loses focus, useful for validating input.
- KeyPress عنصر – runs when the user presses a key while the control is active.
- تحريك الماوس – runs when the mouse pointer moves over the control.
- DblClick – runs when the user double-clicks the control.
To add code for any event, switch on Design Mode, right-click the control, choose View Code, and select the event from the drop-down list at the top of the code window.
















