هر کس می تونه به شما اکسل یاد بده. اما من ، آنچه را که می توانيد با آن انجام دهيد ...

اشتراک در خبرنامه

جهت عضویت در خبرنامه لطفا ایمیل خود را ثبت نمائید

Captcha

آمار بازدید

  • بازدید امروز : 11
  • بازدید دیروز : 107
  • بازدید کل : 80956

مبانی ماکرونویسی جلسه (3)


مبانی ماکرونویسی جلسه (3)

در جلسه قبلی ، با 5 جزءاصلی VBA ، از جمله اشیاء آشنا شدید. این بخش نیز بر روی اشیا تمرکز دارد و یاد خواهید گرفت که:

  • چگونه اشیا سازماندهی می شوند ؛ و
  • چگونه آنها را شناسایی و به یک شیء خاص ارجاع دهید.

سلسله مراتب اشیاء

اشیائی که برنامه اکسل را تشکیل می دهند ، در یک سلسله منطقی سازماندهی شده اند ، که به نام مدل اشیاء اکسل شناخته می شود. در این مدل:

  • شیء برنامه (Application object) ، که کل برنامه Excel را نشان می دهد ، در بالای سلسله مراتب قرار دارد. شیء برنامه شامل اشیاء متعددی است ، به عنوان مثال ، شیء Workbook.
  • شیء Workbook نیز شامل اشیاء دیگری ، مانند شی Worksheet است.
  • شیء Worksheet شامل اشیاء دیگری مانند ، شیء Range و شیء PivotTable است.

مبانی ماکرونویسی در اکسل

این الگو به شکل مشابهی گسترش می یابد تا به اشیایی که شامل شیء دیگری نیستند برسد.

مجموعه ها و مدل اشیاء اکسل

اشیاء معمولا به مجموعه ای از اشیاء مرتبط دسته بندی می شوند. هنگام کار با مدل اشیاء اکسل ، می توانید مجموعه های زیر را در نظر بگیرید:

  • مجموعه Workbooks ، فایل های اکسلی که در حال حاضر باز است ؛ و
  • مجموعه Worksheets ، تمام برگه های موجود در یک فایل اکسل.

مجموعه ها برای دسترسی به اشیاء ضروری هستند. دلایل اصلی این ضرورت , دو مورد زیر است:

  • معمولا به اشیاء منفرد می توان از طریق مجموعه ای که به آن تعلق دارند دسترسی داشت. به عنوان مثال ، اگر می­ خواهید به یک شیء Worksheet مشخص مراجعه کنید ، معمولا به این شیء از طریق مجموعه Worksheets دسترسی خواهید داشت.
  • در برخی موارد ، مجموعه ها به شما اجازه می دهند تا همزمان با همۀ اعضای آن کار کنید. بنابراین ، به جای اینکه آدرس جداگانه ای برای هر شیء منفرد ایجاد کنید ، می توانید با تمام اشیا منفرد همزمان کار کنید. این کار را با یک دستور ساده انجام می دهید ، مثلا:
  • property (ویژگی) مجموعه را تغییر می دهید؛ یا
  • یک method (شیوه عمل) از مجموعه را فراخوانی می کنید.

نحوه ارجاع به یک شی

معمولا ارجاع به شیء را در دو مرحله می توانید انجام دهید:

  1. حرکت رو به پایین در مدل اشیاء اکسل , تا به مجموعه ای که حاوی شیء مورد نظر شما است برسید.
  2. شناسایی شیء در مجموعه ای که داخل آن قرار دارد.

حرکت در مدل اشیاء اکسل

برای حرکت در مسیر مدل اشیاء اکسل (مرحله 1) , سه قاعده اساسی زیر را دنبال کنید:

  1. با شیء برنامه در بالای مدل اشیاء اکسل شروع کنید و سلسله مراتب را تا موقعیت مورد نیاز ادامه دهید.
  2. به عنوان یک قاعده کلی ، از properties (ویژگی ها) برای ارجاع به اشیاء استفاده کنید. هنگامی که یک شیء شامل شیء دیگری است ، شیء درونی معمولا دارای یک ویژگی است که می توانید برای دسترسی به آن استفاده کنید.
  3. در مسیر مدل اشیا اکسل ، از نقطه (.) برای اتصال اشیاء با ویژگی های آن استفاده کنید.

به عنوان مثال ، ارجاع به یک شیء Worksheet ، را در نظر بگیرید. از دید کلی ، تقریبا می توانید به صورت زیر عمل کنید:

  1. به شیء برنامه اکسل (Application) ارجاع دهید.
  2. ویژگی Workbooks از شیء برنامه ، مجموعه Workbooks را باز می گرداند که نماینده تمام فایل های باز است. می وانید با اتصال شیء (Application) و ویژگی (Workbooks) با یک نقطه (Application.Workbooks) , به این مجموعه بروید(ساختار اصلی دستورات VBA , در جلسه دوم را مشاهده کنید).
  3. در مجموعه Workbooks بایستی شیء Workbook مناسب را انتخاب کنید (نحوه انجام آن را در بند زیر یاد می گیرید).
  4. ویژگی Worksheets از شیء Workbook , مجموعه Worksheets را باز می گرداند ، که نشان دهنده تمام برگه ­های موجود در فایل اکسل است.
  5. می­ توانید با اتصال شیء (Application.Workbooks) و ویژگی (Worksheets) با یک نقطه (Application.Workbooks.Worksheets) به این مجموعه بروید.
  6. در مجموعه Worksheets ، باید شیء Worksheet مناسب را مشخص کنید.

در ادامه نحوه این شناسایی را یاد می گیرید.

نحوه شناسایی و مشخص کردن یک شیء خاص از یک مجموعه

معمولا یک شیء از یک مجموعه را به دو روش زیر مشخص می کنند:

  1. با استفاده از شماره شاخص , که نشان دهنده موقعیت شیء در مجموعه است.
  2. با استفاده از نام شیء

ملاحظات خاصی وجود دارد که به هر دو روش اعمال می شود. با این حال ، در سطح پایه ، معمولا می توانید قوانین زیر را اعمال کنید:

  • شماره شاخص یا نام شیء پس از نام مجموعه قرار می گیرد.
  • شماره شاخص در داخل پرانتز قرار دارد (Collection(IndexNumber)).
  • نام شیء در داخل علامت نقل قول و پرانتز (Collection("ObjectName")) قرار می گیرد.

موارد زیر نمونه هایی از نحوه اعمال این قوانین را نشان می دهد:

  • اولین شیء Workbook در مجموعه Workbooks :

Application.Workbooks (1)

  • اولین شیء Worksheet در مجموعه Worksheets ( اولین شیء Workbook):

Application.Workbooks (1) .Worksheets (1)

  • فایل اکسل با نام"Book1.xlsx" :

Application.Workbooks ("Book1.xlsx")

  • برگه با نام "Sheet1" در فایلی با نام Book1.xlsx:

Application.Workbooks("Book1.xlsx").Worksheets("Sheet1")

نکته

سلسله مراتب ارجاع به اشیاء که در بند قبلی ارائه شد به عنوان آدرس کامل شناخته می شوند.

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

مفروضات اصلی VBA و پیامدهای آن به شرح زیر است:

  • VBA فرض می کند که با شیء برنامه (اکسل) کار می کنید. بنابراین ، می توانید شیء برنامه (Application object) را حذف کنید.
  • VBA عموما فرض می کند که  با شیء فعال (به عنوان مثال، فایل اکسل فعال، برگه فعال یا سلول فعال) کار می کنید. بنابراین ،  می توانید:

o هنگام کار با فایل اکسل فعال ، شیء Workbook را حذف کنید ؛ و

o هنگام کار با برگه فعال ، شیء Worksheet را حذف کنید.

هنگام ارجاع به اشیاء ، شیء Application معمولا حذف می شود. با این حال ، حذف شیء Workbook و Worksheet , کار آسانی نیست. هر دو شیء مزیت و معایب بالقوه ای دارند. بنابراین ، برخی از کاربران VBA توصیه می کنند که در ارجاع به شیء از آدرس کامل استفاده شود در حالی که ، برخی دیگر توصیه می کنند که آدرس ارجاع را تا آنجا که ممکن است باید ساده کرد.

در جلسه بعدی ، یاد می گیرید که چگونه با استفاده از property  و  method ، اشیاء را دستکاری کنید. 

*جهت دریافت کتاب های آموزش ماکرونویسی با اکسل روی تصویر کلیک کنید*

کتاب آموزش ماکرو نویسی با اکسل

  انتشار : ۱ خرداد ۱۳۹۸               تعداد بازدید : 658

برچسب های مهم

دیدگاه های کاربران (0)

حقوق مادی و معنوی این سایت متعلق به exceldepo می باشد.

فید خبر خوان    نقشه سایت    تماس با ما