اذهب الي المحتوي
أوفيسنا

أهمية "Option Explicit"


الردود الموصى بها

السلام عليكم ورحمة الله وبركاته

عندما ينشر مستخدمو Loungers ملفًا مثل مستند Word أو مصنف Excel يحتوي على كود VBA

غالبًا ما ألاحظ عدم وجود سطر Option Explicit في الجزء العلوي من وحدات الكود

في هذا المنشور الطويل سأحاول شرح سبب وجود مثل هذا السطر وكيف يمكنك إضافته تلقائيًا إلى وحدات نمطية جديدة

يحدد السطر "Option Explicit" لأنه يجب عليك الإعلان صراحةً عن جميع المتغيرات التي تستخدمها داخل الوحدة النمطية عند ترميز الأكواد

إذا لم يكن لديك هذا السطر في الجزء العلوي من الوحدة فيمكنك إنشاء متغيرات "أثناء التنقل" عن طريق ذكرها

ببساطة في الكود الخاص بك. قد يبدو هذا مفيدًا في البداية، ولكنه أمر خطير

لأن الخطأ المطبعي الصغير يعني أنك تقوم بإنشاء متغير جديد ولن يتم تحذيرك بشأن هذا

مجرد معلومة والله الموفق وجزاكم الله خيرا

رابط هذا التعليق
شارك

نعم، ما ذكرته صحيح تماما استخدام Option Explicit في VBA يعتبر أمر جيد  لأسباب عدة ومن فوائدها كدالك 
إعلان المتغيرات:  يتطلب منك الإعلان عن جميع المتغيرات قبل استخدامها هذا يساعد على تجنب الأخطاء الناتجة عن الأخطاء المطبعية

تحسين الأداء:  يمكن أن يؤدي استخدام المتغيرات بشكل غير معلن إلى استخدام ذاكرة غير ضرورية عند الإعلان عنها يمكن للـ VBA تحسين الأداء

سهولة التصحيح:  عندما يحدث خطأ  يكون من الأسهل تحديد مكان الخطأ حيث تعرف أنك قد أغلقت جميع المتغيرات المعلنة

زيادة الوضوح:  يجعل الكود أكثر وضوحا  للآخرين الذين قد يقرأون كودك أو يعملون عليه مما يسهل فهم ما يحدث في كل جزء

على كل حال أخي @سعيد بيرم
إذا كنت تقوم بتطوير تطبيقات VBA أو تعمل على كود موجود  فإن الالتزام باستخدام Option Explicit يمكن أن يساعدك بشكل كبير في الحفاظ على جودة الكود وتقليل الأخطاء

شكرا لمشاركتك هذه المعلومة المهمة وجزاك الله خيرا 


 للفائدة : افتح محرر VBA (Alt + F11) - انتقل إلى Tools ثم Options - في علامة التبويب Editor تأكد من تحديد خيار  Require Variable Declaration
بمجرد تفعيل هذا الخيار  ستتم إضافة Option Explicit تلقائيا في أعلى كل وحدة نمطية جديدة تقوم بإنشائها مستقبلا 

تم تعديل بواسطه محمد هشام.
رابط هذا التعليق
شارك

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



سجل دخولك الان
  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information