هر فایل اکسل نماینده یک کاربرگ می باشد. شیء Workbook در اکسل بیانگر یک کاربرگ اکسل است. در این آموزش با رخدادها (Events)، متدها (Methods) و خصوصیات (Properties) این شیء و کاربرد آنها در ماکرونویسی بیشتر آشنا می شویم.
مدت زمان تخمینی مطالعه: 2 دقیقه
فهرست مطالب
معرفی شیء Workbook اکسل
شیء Workbook اکسل یکی از اعضای مجموعه (collection) Workbooks می باشد [1]. مجموعه Workbooks شامل تمام اشیاء Workbook که در یک زمان توسط نرم افزار اکسل در حال اجرا هستند است.
به عبارت دیگر وقتی که چند فایل اکسل توسط نرم افزار اکسل در حال اجرا می باشد، شیء Workbook مرتبط با هر فایل در مجموعه Workbooks نگهداری خواهند شد. بعنوان مثال ماکروی زیر اولین کاربرگ را فعال می کند:
Workbooks(1).Activate
همچنین با استفاده از ماکروی زیر می توانید تمام کاربرگ های فعال اکسل (نه خود برنامه اکسل) را ببندید:
Workbooks.Close
اعضاء زیرمجموعه شیء Workbook اکسل در سه گروه زیر تقسیم بندی می شوند:
رخدادها (Events)
رخداد یک عمل نظیر کلیک کردن یا فشردن یک کلید است که انجام آن توسط شیء Workbook تشخیص داده می شود و شما می توانید یک ماکرو برای پاسخ به آن بنویسید. رخداد می تواند در نتیجه عمل کاربر، کد برنامه یا توسط سیستم به خدمت گرفته شود.
با استفاده از ماکرو رخداد Workbook می توانید عملیاتی که کاربر انجام می دهد را مدیریت نمایید. بعنوان مثال وقتی که کاربر کاربرگ اکسل را باز کند یا وقتی که کاربرگ توسط کاربر فعال شود چه اتفاقی باید بیفتد یا چه اتفاقی نباید بیفتد.
ماکروی زیر هنگام فعال شدن کاربرگ اکسل اطلاعات سلول های A1 تا A10 را از پایین به بالا (Ascending) مرتب می نماید.
Private Sub Workbook_Activate()
Range("a1:a10").Sort Key1:=Range("a1"), Order1:=xlAscending
End Sub
متدها یا رفتارها (Methods)
متد یا رفتار یک عمل است که توسط شیء انجام می شود. بعنوان مثال Save یا ذخیره یک عمل است که می تواند توسط شیء Workbook انجام شود. بعنوان مثال ماکروی زیر اطلاعات اولین کاربرگ اکسل را ذخیره می کند:
Sub saveChanges()
Dim WB As New Workbook
Set WB = Workbooks(1)
WB.Save
End Sub
ویژگی ها یا خواص (Properties)
ویژگی (Properties) یک صفت است که مشخصات یک شیء نظیر رنگ، اندازه یا مکان آن در صفحه نمایش را تعریف می نماید. بعنوان مثال ویژگی ActiveSheet شیء مربوط به صفحه فعال شیء Workbook را برمی گرداند. ماکروی زیر نام صفحه فعال اولین کاربرگ اکسل را در پنجره پیغام نمایش می دهد.
Sub sheetName()
Dim WB As New Workbook
Set WB = Workbooks(1)
MsgBox WB.ActiveSheet.Name
End Sub