You are currently viewing پروژه VBA در اکسل | قسمت های مختلف یک پروژه VBA در اکسل

پروژه VBA در اکسل | قسمت های مختلف یک پروژه VBA در اکسل

پروژه در VBA مجموعه ای از ماژول ها می باشد. [1] در این آموزش قسمت های مختلف یک پروژه VBA در اکسل را بررسی می کنیم و یک ماکروی آموزشی در هر یک از این قسمت ها ایجاد و ذخیره می نماییم.

آیا می‌دانید:

آیا می‌دانید که ماکرونویسی در اکسل به شما این امکان را می‌دهد که با استفاده از دستورات VBA، به‌سرعت کارهای پیچیده را انجام دهید و در عین حال آموزش ویژوال بیسیک در اکسل می‌تواند شما را در ایجاد ماکروهای پیشرفته یاری کند؛ به‌طوری که با تسلط بر این مهارت‌ها، می‌توانید به‌راحتی از نمونه کدهای VBA در اکسل بهره‌برداری کنید و کارایی فرآیندهای خود را به حداکثر برسانید؟

پیش نیازهای آموزشی

قسمت های مختلف یک پروژه VBA در اکسل

ماکروها در اکسل در ویرایشگر کد ویژوال بیسیک که به اختصار VBE (مخفف Visual Basic Editor) نامیده می شود، نوشته می شوند.

آموزش نحوه باز کردن ویرایشگر کد VBE در اکسل را می توانید در این صفحه مشاهده نمایید.

وقتی در یک کاربرگ اکسل جدید VBE را باز نمایید، نمای آن به صورت تصویر زیر می باشد.

نمای ویرایشگر کد ویژوال بیسیک (VBE) در اکسل
قسمت های مختلف یک پروژه VBA در اکسل
پنجره مرور پروژه

بصورت پیش فرض پنجره مرور پروژه (Project Explorer) ویرایشگر VBE در اکسل شامل سه شاخه (مطابق تصویر) می باشد.

  • VBAProject (Book1) : محتوای یک پروژه VBA، که در یک فایل اکسل به نام Book1 ذخیره شده است را نمایش می دهد.
  • Microsoft Excel Object : اشیاء مرتبط با اکسل شامل صفحات اکسل و کاربرگ را نمایش می دهد.
    • Sheet1 : شیء صفحه اکسل (Excel sheet) است و به صفحه Sheet1 در فایل اکسل Book1 اشاره دارد. در صورتی که کاربرگ اکسل بیشتر از یک صفحه داشته باشد، به طور خودکار در این قسمت اضافه خواهند شد.
    • ThisWorkbook : شیء کاربرگ اکسل (Workbook) است و به کاربرگ Book1 اشاره دارد.

Sheet1 و ThisWorkbook دو تا از مکان هایی هستند که ماکروهای اکسل را می توانند در خود ذخیره نمایند. ماژول (استاندارد) مکان دیگری است که می تواند ماکروها را در خود ذخیره نماید.

برای آشنایی بیشتر با انواع ماژول، کاربرد و تفاوت بین آن ها در VBA این آموزش را مطالعه نمایید.

افزودن ماژول (استاندارد) به پروژه VBA اکسل

ایجاد ماژول استاندارد در VBA
منوی Insert در VBE

برای ایجاد یک ماژول استاندارد در ویرایشگر VBE منوی Insert را باز و روی گزینه Module کلیک نمایید. VBE ماژول جدیدی با نام Module1 در پوشه Modules ایجاد می نماید.

در پنجره خواص (Properties Window) ویرایشگر VBE در قسمت (name) می توانید نام ماژول را تغییر دهید. در این آموزش نام ماژول را تغییر نمی دهیم.

قسمت های مختلف یک پروژه VBA در اکسل پس از ایجاد ماژول
نمای پروژه پس از افزودن ماژول

نمای پنجره مرور پروژه (Project Explorer) ویرایشگر VBE پس از افزودن ماژول استاندارد مانند تصویر مقابل می باشد. همانطور که در تصویر نیز مشخص می باشد، VBE یک پوشه جدید بنام Modules ایجاد کرده است و ماژول Module1 را در آن قرار داده است.

مکان های ذخیره ماکرو در اکسل

با توجه به توضیحات داده شده در قسمت قبلی، در یک پروژه VBA در اکسل سه نوع محل ذخیره برای ماکروها وجود دارد.

اشیاء صفحه اکسل (Sheet1 (Sheet1))

در ویرایشگر VBA در اکسل به تعداد صفحاتی که در یک کاربرگ وجود دارد یک شیء صفحه بصورت خودکار در پروژه VBA ایجاد می شود. در هر یک از اشیاء صفحه می توانید ماکروهای موردنیاز را ایجاد و ذخیره نمایید.

در فایل اکسل این آموزش فقط یک صفحه بنام Sheet1 وجود دارد.

اگر نام صفحه Sheet1 در اکسل را به نام دیگری مثل test تغییر دهید، VBE نام شیء مرتبط با آن را بصورت Sheet1 (test) نمایش خواهد داد، و به این معناست که این شیء به صفحه اول اکسل (ترتیب شماره بر مبنای Index آن در فایل اکسل و نه ترتیب نمایشی در اکسل است) که نام آن test می باشد، اشاره دارد.

روی آیکون Sheet1 (Sheet1) دوبار کلیک نمایید تا پنجره کد این شیء باز شود. کد زیر را در پنجره کد کپی نمایید.

Public Sub sheetMacro()
    MsgBox "این ماکرو در شیء صفحه ۱ اکسل ذخیره شده است.", vbInformation + vbMsgBoxRtlReading
End Sub

شیء ThisWorkbook اکسل

شیء ThisWorkbook در اکسل به کاربرگ اکسل اشاره دارد. بدیهی است که در هر پروژه VBA در اکسل فقط یک شیء از این نوع وجود خواهد داشت. در این شیء نیز می توانید ماکروهای اکسل را ایجاد و ذخیره نمایید.

روی آیکون ThisWorkbook دوبار کلیک نمایید تا پنجره کد این شیء باز شود. کد زیر را در پنجره کد کپی نمایید.

Public Sub ThisWorkbookMacro()
    MsgBox "اين ماکرو در شيء کاربرگ ذخيره شده است.", vbInformation + vbMsgBoxRtlReading
End Sub

ماژول (استاندارد)

ماژول استاندارد مکان دیگری است که می توانید ماکروهای اکسل را در آن ایجاد و ذخیره نمایید. یک پروژه VBA در اکسل می تواند تعداد زیادی ماژول داشته باشد.

روی آیکون Module1 دوبار کلیک نمایید تا پنجره کد آن باز شود. کد زیر را در پنجره کد کپی نمایید.

Public Sub Module1Macro()
    MsgBox "اين ماکرو در ماژول 1 ذخيره شده است.", vbInformation + vbMsgBoxRtlReading
End Sub

نمایش و اجرای ماکرو در اکسل

برای اجرای ماکروها در اکسل از سربرگ Developer گزینه Mocros را انتخاب نمایید.

نمایش و اجرای ماکرو در اکسل
روی گزینه Mocros در سربرگ Developer کلیک نمایید تا ماکروهای ایجاد شده در بخش قبلی نمایش داده شوند.

همانطور که مشاهده می کنید اکسل سه ماکرو را مطابق تصویر زیر پنجره Macro نمایش می دهد. می توانید هر یک را انتخاب و روی گزینه Run کلیک نمایید تا نتیجه را مشاهده نمایید.

پنجره Macro در اکسل
ماکروهای ذخیره شده در اکسل در پنجره Macro نمایش داده می شوند.

فایل اکسل این آموزش را می توانید از این لینک دریافت نمایید.

در آموزش بعد با قسمت های مختلف پروژه VBA در اکسل بیشتر آشنا خواهیم شد.

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