آموزش گام به گام array در وی‌بی‌ای اکسل

کار با آرایه ها در vba اکسل

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

کار با آرایه ها در vba اکسل

با نام و یاد خداوند بخشنده و مهربان، با یک مقاله آموزشی دیگر با عنوان کار با آرایه ها در vba اکسل خدمت شما عزیزان و علاقه مندان به یادگیری مباحث شیرینی ماکرونویسی در اکسل هستیم.

آرایه های ثابت(Static) در وی‌بی‌ای اکسل

به زبان بسیار بسیار ساده، آرایه ها در ماکرونویسی همان متغیرها هستند! با این تفاوت که قادر به ذخیره سازی بیش از یک مقدار هستند.

به منظور درک بهتر به ماکرویی که در ادامه آورده شده است دقت نمایید:

در ماکروی فوق یک متغیر به نام iName تعریف گردیده است که یک داده از نوع رشته (String) درون خود جای داده است.

حال با درنظر گرفتن ماکروی قبل، به ماکروی دیگری که در ادامه آورده شده است توجه فرمایید:

در ماکروی فوق ما آرایه ای به نام iName تعریف نمودیم که شامل 3 داده به ترتیب اسامی فوق می باشد.

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

در ماکروی فوق آرایه ای به نام iName تعریف نمودیم که از 3 عضو تشکیل شده است. نکته ای که در این بخش حائز اهمیت می باشد این است که در این نوع تعریف آرایه، شروع جایگاه از عدد 0 خواهد بود. در ادامه تصویری از فضای آرایه فوق را مشاهده خواهید نمود:

نمایی از فضای آرایه در وی‌بی‌ای
آرایه های ثابت(Static) در وی‌بی‌ای اکسل

همچنین در صورت استفاده از روش فوق، می توانید شروع جایگاه آرایه ها را توسط Option Base از عدد 1 تعیین نمایید:

ماکرویی از کاربرد آرایه در وی‌بی‌ای
آرایه های ثابت(Static) در وی‌بی‌ای اکسل

با درج دستور Option Base 1 در ابتدای ماژول، شروع جایگاه آرایه ها از عدد 1 خواهد بود.

البته به منظور تکمیل این بخش باید اضافه کنم که شما قادر به تعریف چندین فضا در یک آرایه بصورت زیر نیز خواهید بود:

در ادامه تجسم آرایه فوق را خواهیم داشت:

نمایی از آرایه 2 بعدی در اکسل
آرایه های ثابت(Static) در وی‌بی‌ای اکسل

حال تا به این لحظه یاد گرفتیم که چگونه آرایه های ثابت(Static) در وی‌بی‌ای اکسل تعریف کنیم. در ادامه نحوه تعریف آرایه های پویا(Dynamic) را به شما خواهیم آموخت.

آرایه های پویا(Dynamic) در وی‌بی‌ای اکسل

آرایه های پویا برخلاف آرایه های ثابت، فضای ثابتی ندارند و درطول اجرای ماکرو منعطف تر و قابل تغییر هستند.

به منظور درک بهتر به آرایه ای که در ادامه تعریف گردیده است، دقت کنید:

در ماکروی فوق، آرایه iName از نوع پویا تعریف گردیده است که تعیین فضای آن توسط دستور ReDim در سطر دوم صورت گرفته است.

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

آرایه هایی که تا به این لحظه مورد بحث قرار گرفتند، جزو آرایه های یک بعدی محسوب می شدند. شما می توانید اقدام به تعریف آرایه های 2 بعدی کنید.

به ماکروی زیر دقت کنید:

آرایه های دوبعدی در وی‌بی‌ای اکسل
آرایه های دوبعدی در ماکرونویسی

ماکروی فوق یک ماکروی 2 بعدی محسوب می شود. به منظور درک بهتر از این نوع آرایه به تصویر زیر دقت کنید:

مثالی از آرایه در ماکرونویسی
آرایه های دوبعدی در ماکرونویسی

و یا تصویر زیر نمونه ای از آرایه 2 بعدی  iName(2,4) خواهد بود:

نمایی از آرایه دوبعدی در وی بی ای اکسل
آرایه های دوبعدی در ماکرونویسی

البته تعریف آرایه ها توسط تابع Array نیز امکان پذیر است. به عنوان مثال:

با توجه به ماکروی فوق، توسط تابع Array اقدام به مقداردهی و سپس فراخوانی آرایه iName نمودیم. در این نوع مقداردهی توجه فرمایید که نوع فضای آرایه می بایست از نوع Variant تعریف گردد.

به مثالی که در آورده شده است دقت کنید:

آرایه دوبعدی در وی‌بی‌ای اکسل
آرایه های دوبعدی در ماکرونویسی

در ماکروی فوق، آرایه ای از روزهای هفته تعریف نمودیم که توسط تابع Array مقداردهی شده است. در پایان توسط تابع Msgbox مقدار جایگاه شماره 4 آن را فراخوانی نمودیم که قطعا روز “چهارشنبه” خواهد بود.

آرایه دوبعدی در vba اکسل
آرایه های دوبعدی در ماکرونویسی

در پایان امیدواریم مقاله آموزشی کار با آرایه ها در vba اکسل مورد تایید و استفاده شما عزیزان قرار گرفته باشد لذا در صورت وجود هرگونه انتقاد و پیشنهاد می توانید آن را در قسمت نظرات بری ما ارسال نمایید. همچنین بنده برای تهیه این مقاله آموزشی از سایت های مفیدی همانند مایکروسافت، educba.com و automateexcel.com استفاده نمودم.

پیشنهاد ما به شما