ثابت ها در ماکرونویسی ویژوال بیسیک

در مقالات قبلی به تفصیل در مورد متغیرها، انواع آنها و روش تعریف متغیرها در ویژوال بیسیک صحبت کردیم، در این مقاله با مفهومی دیگر در ماکرو نویسی اکسل آشنا میشویم، گاهی در برنامه نویسی ها اعدادی وجود دارند که دائماً در کدها تکرار میشوند و همواره مقدار آنها در طول برنامه ثابت است (بر خلاف متغیرها که همواره مقدار آنها تغییر میکرد)، به این نوع داده ها Constant یا ثابت ها در ماکرونویسی در اکسل میگوییم.

فرض کنید شما کدی هزار خطی برای یک موسسه اقتصادی مینویسید که در آن نرخ بهره یک عدد مشخص است که در کدهای نوشته شده چندین بار تکرار شده است، یک راه این است که هرجایی که نیاز یه درج نرخ بهره بود عدد معادل را بنویسید اما راه ساده تر این است که یک ثابت (Constant) به اسم نرخ بهره در ابتدای کدها تعریف کنید و در طول کدها تنها نام آن را بنویسید. در حالت دوم در صورت تغییر نرخ بهره نیازی به یافتن تمام اعداد در تمام کدها نیست، شما تنها کافیست در تعریف ثابت مورد نظر مقدار آن را تغییر دهید.

ثابت ها در ماکرو نویسی ویژوال بیسیک

انواع ثابت ها در ماکرونویسی

ثابت ها در ماکرونویسی ویژوال بیسیک به دو دسته ی کلی تقسیم میشوند، به صورت پیشفرض، زبان برنامه نویسی ویژوال بیسیک در اکسل ثابت هایی تعریف کرده است که برنامه نویسان میتوانند در کدهای خود از آنها استفاده نمایند، این ثابت ها بیشتر مربوط به تنظیمات یا خواص (Properties) اشیا (Object) میباشند. مثلاً برای اختصاص رنگ نارنجی به سلول A1 میتوان از کد زیر استفاده نمود:

در کد بالا عبارت xlThemeColorAccent6 نام یک ثابت است که مقدار آن برابر با ۱۰ میباشد، این عدد ثابت در ویژوال بیسیک قبلاً تعریف شده و در تمام کد ها و ماژول قابل استفاده میباشد، یعنی اگر شما هرجایی از کدهای خود عبارت xlThemeColorAccent6 را بنویسید با آن مانند عدد ۱۰ برخورد میشود. مانند کد زیر که مقدار ۱۳ را در سلول A1 مینویسد.

مقدار این ثابت همه جا همین عدد میباشد، نکته اینجاست که این عدد برای Properties رنگ زمینه ی سلول (ThemeColor Properties) به معنی رنگ نارنجی میباشد. به این دست از ثابت ها در ویژوال بیسیک Pre-Defined Constant یا Pre-Made Constant میگویند.

دو راه برای دانستن مقدار ثابت ها در ماکرونویسی ویژوال بیسیک وجود دارد، راه اول همانند کد بالا که مقدار آن ثابت را به یک متغیر اختصاص دهیم و آن را بخوانیم راه دوم نوشتن هریک از کدهای زیر در Immediate Window است، هر دو کد به یک معنی هستند:

ثابت ها در ماکرو نویسی

دسته ی دوم ثابت ها در ماکرونویسی ویژوال بیسیک ثابت هایی هستند که برنامه نویسان در کدهای خود تعریف میکنند، مانند نرخ بهره در مثالی که در ابتدای این مقاله گفته شد.

ثابت ها در ویژوال بیسیک

تعریف ثابت ها در ماکرونویسی ویژوال بیسیک

برای تعریف ثابت ها در ویژوال بیسیک میتوان از عبارت Const استفاده کرد، ثابت ها هم مانند متغیر ها دارای Scope میباشند، با مفهوم Scope در مورد متغیرها قبلاً آشنا شدیم، برای یادآوری میتوانید نگاهی به مقاله ی تعریف متغیرها و حوزه اعتبار آنها بیندازید.

ثابت ها در سطح ماژول (Module-Level Constants) را میتوان با استفاده از عبارت Const در قسمت Declaration هر ماژول تعریف کرد، همینطور از عبارت Const میتوان برای تعریف کردن ثابت ها در سطح پروسیژر (Procedure-Level Constants) نیز استفاده نمود، کدهای زیر همگی یک ثابت با مقدار مشخص را در سطح ماژول یا پروسیژر تعریف میکنند.

اگر بخواهیم ثابت هایی تعریف کنیم که در تمام ماژول های یک Project قابل استفاده باشند میتوانیم از عبارت Public Const استفاده کنیم، مانند کدهای زیر:

ثابت ها در ماکرو نویسی در اکسل

اشتراک گذاری در شبکه های اجتماعی: share on facebook share on google plus share on linkedin

۴ نظر

  1. هاشم

    سلام و خدا قوت مطالب خوب و مفید هستند . من تازه با سایت شما آشنا شدم و هدف این است که اکسل را کامل یاد بگیرم تا بتونم کلاس های آموزشی هم داشته باشم .
    وتازه دارم ماکرو نویسی کار می کنم . با تشکر از شما

    1. حامد قدیمی

      سلام، متشکرم، مقالات آموزشی سایت در حال تکمیل تر شدن هستند، با توجه به زمانبر بودن نگارش مقالات، لطفاً در خبرنامه عضو باشید تا در جریان قرار بگیرید، امیدوارم موفق باشید.

دیدگاهتان را بنویسید؟