دستور Option Explicit در سطح ماژول (module level) استفاده می شود تا اعلان همه متغیرها در آن ماژول را بصورت صریح (Explicitly) تحمیل نماید.
Syntax:
Option Explicit
ملاحظات:
در صورتی که Option Explicit در یک ماژول استفاده شود باید قبل از هر روالی ظاهر شود. استفاده از Option Explicit در یک ماژول به این معنا است که همه متغیرها در آن ماژول باید بصورت صریح با استفاده از یکی از دستورهای Dim، Private، Public، ReDim و یا Static اعلان شوند.
در صورتی که در ماژولی که اعلان متغیر در آن بصورت صریح تعیین شده است، از یک نام متغیر اعلام نشده استفاده نمایید با خطای حین کامپایل (compile time) مواجه خواهید شد.
در صورت عدم استفاده از Option Explicit همه متغیرهایی که اعلان نشده باشند از نوع Variant خواهند بود مگر اینکه نوع پیش فرض آن توسط دستور Deftype مشخص شده باشد.
مثال
در مثال زیر دستور Option Explicit اعلان صریح همه متغیرها را اجباری می نماید. در نتیجه هر تلاشی برای استفاده از متغیرهای اعلام نشده خطای حین کامپایل را نتیجه خواهد داد. همانطور که در مثال زیر نیز رعایت شده است دستورOption Explicit فقط در سطح ماژول قابل استفاده می باشد.
Option Explicit ' تعیین نحوه اعلان صریح متغیرها به کامپایلر
Dim MyVar ' اعلان متغیر
Private Sub MYsub()
MyInt = 10 ' متغیر اعلان نشده باعث ایجاد خطای حین کامپایل می شود
MyVar = 10 ' متغیر اعلان شده خطایی ایجاد نخواهد کرد
End Sub
منبع:
بیشتر بخوانید
دستور Dim: اعلان متغیرها و اختصاص فضای حافظه
انواع داده VBA: راهنمای انواع داده و محدوده مقادیر آنها
دستور Option Explicit | نحوه اعلان متغیرها در ویژوال بیسیک
دستور ReDim | تغییر اندازه و ابعاد آرایه پویا در ویژوال بیسیک
عملگر Like: مقایسه و تطبیق رشته ها با یکدیگر در VBA
دستور Static | اعلان متغیر استاتیک درون روال در ویژوال بیسیک