ابتدا سلام عرض میکنم خدمت یکایک هموطنان عزیز و علاقه مند به یادگیری زبان برنامه نویسی وی بی ای در اکسل. اگر تا به امروز اطلاعات مفیدی در خصوص این زبان برنامه نویسی محبوب در فضای مجازی یافت نکردین، نگران نباشید زیرا در این پست آموزشی قصد دارم اطلاعات مفیدی را پیرامون VBA با عنوان “ماکرونویسی در اکسل چیست” خدمت شما سروران و دنبال کنندگان محترم سایت آموزشی اکسل لرن ارائه کنم.
VB مخفف عبارت Visual Basic می باشد که خود به تنهایی یک زبان برنامه نویسی بیسیک و پایه بوده که توسط شرکت مایکروسافت ارائه و گسترش یافته است. حال زبان برنامه نویسی وی بی ای(VBA) برگرفته از زبان برنامه نویسی ویژوال بیسیک می باشد که در محیط نرم افزارهای آفیس همانند اکسل، ورد ، پاورپوینت و اکسس قابل استفاده و اجرا است که حرف A در انتهای کلمه VBA به تنهایی گواه صحبت بنده است زیرا به معنای Applications یا به عبارتی برنامه های کاربردی امثال اکسل، ورد، پاورپوینت و اکسس بوده که برنامه های نوشته شده تحت زبان VBA نیازمند حضور آنها جهت اجرا است.
ماکرونویسی یعنی مجموعه ای از دستورات که به زبان VBA یکبار نوشته می شوند و بارها و بارها مورد استفاده قرار میگیرند. برای درک بهتر مفهوم ماکرونویسی، شما فرض کنید روزانه اطلاعاتی را از نرم افزار مالی خود دریافت، سپس ویرایش و در پایان اقدام به استفاده از محتوای اطلاعات آن می کنید. این عملیات ویرایش کردن اطلاعات یک روند ثابت و تکراری را در هر روز برای شما رقم میزند که میتوان آن را با استفاده از ماکرو یکبار تعریف و هر روز مورد استفاده قرار داد. البته جهت اطلاع عرض کنم که کلمات برنامه نویسی، کدنویسی، ماژول نویسی و سایر موارد مشابه، همان ماکرونویسی محسوب می شوند که با آن در قسمت فوق آشنا شدین.
اگر بخواهم خیلی ساده خدمت شما بزرگواران عرض کنم، ماژول صفحه ای هست که شما در آن اقدام به درج کدهای ماکرونویسی می کنید. شما در نرم افزار ورد صفحه، در نرم افزار پاورپوینت اسلاید، در نرم افزار اکسل شیت و در ماکرونویسی ماژول(Module) را خواهید داشت.
با مشاهده تصویر زیر وجود ماژول(Module) را در قسمت های مختلف محیط VBE مشاهده خواهید نمود:
در ماکرونویسی برنامه های بزرگ را به چندین بخش کوچک به نام سابروتین(subroutine) تقسیم می کنند تا علاوه بر نظم، تسلط و کنترل بیشتر روی قسمت های مختلف برنامه داشته باشیم. به عبارتی میتوان گفت دیگر سابروتین ها برنامه های کوچک شده ای هستند که هریک عهده دار یک وظیفه مشخص در برنامه هستند که با Sub آغاز و با End Sub به پایان می رسند. در ادامه نمونه ای از چندین سابروتین را مشاهده خواهید نمود:
تفاوت اصلی Sub و Function در خروجی هریک است بطوریکه تابع(Function) قطعا با یک خروجی همراه خواهد بود درحالیکه در سابروتین به این صورت نیست و یا به عبارت دیگر میتوان گفت که تابع نیازمند یک ورودی برای اجرا است درحالیکه سابروتین نیازمند اجرا(F5) است. تفاوت دیگر این است که شما قادر به استفاده از تابع(Function) در سلول های صفحه گسترده خواهید بود درحالیکه شما قادر به استفاده از سابروتین در سلول های صفحه گسترده نخواهید بود.
در ادامه نمونه ای از تابع(Function) را مشاهده خواهید نمود:
تهیه شده توسط گروه آموزشی اکسل لرن