کدهای تمرینی ماکرو نویسی در اکسل

در این مقاله میخواهیم چند کد نمونه برای انجام کارهای خاص در ویژوال بیسیک به منظور ماکرو نویسی در اکسل ارایه نماییم، تمرین کدهای زیر مختص کسانی هست که تمامی مقالات آموزشی سایت را مطالعه و تمرین کرده اند و نیاز به یادگیری و تمرین بیشتر دارند.

همچنین در  این مقاله، یک فایل مربوط به فصل یازدهم کتاب “شروع ماکرو نویسی در اکسل” قرار داده شده است که حاوی کدهای تمرینی قرار داده شده در این کتاب میباشد. کتاب “شروع ماکرو نویسی در اکسل” توسط “حامد قدیمی” نویسنده و مدیر سایت آموزشی Excelpro.ir نوشته شده است و بر اساس این کتاب یک دوره آموزش تصویری نیز توسط ایشان تهیه شده است.

برای خرید فایل کتاب از سایت Excelpro.ir  بر روی این خط کلیک کنید.

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

برای دانلود فایل کد های نمونه و تمرینی فصل یازدهم کتاب “شروع ماکرو نویسی در اکسل” بر روی این خط کلیک نمایید.

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

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

  • انتخاب چند شیت یا محدوده به صورت همزمان و محدوده چند بعدی

اگر شما بر روی یک محدوده ی مشخص از چند شیت کار میکنید، میتوانید از تابع Array برای اشاره همزمان به تمام شیت های مورد نظر استفاده نمایید. پس از نتخاب تمام شیت ها میتوانید محدوده ی دلخواه در این شیت ها را مورد اشاره قرار دهید.

به عنوان مثال در کدهای زیر میخواهیم خطوط حاشیه ی زیرین (Bottom Border Line) سلول های محدوده ی A1:H1 در شیت های اول، دوم و سوم را به صورت همزمان تغییر دهیم و به صورت دوخط (Double Line) تبدیل کنیم. و عبارت ExcelPro را در آنها بنویسیم.

 

  • تعریف محدوده سه بعدی

به محدوده ی انتخاب شده در کدهای بالا، به این دلیل که در هر سه شیت به صورت همزمان انتخاب شده است، یک محدوده ی سه بعدی (۳D Range) میگوییم. میتوانیم محدوده هایی با ابعاد بیشتر در کدهای ویژوال بیسیک تعریف نماییم.

 

  • انتقال خواص یک محدوده به محدوده های مشابه در تمام شیت های دیگر

فرض کنید فایل اکسل (Workbook) شما دارای پنج شیت (Worksheet) میباشد، شما برخی خواص و یا مقادیر را در یک محدوده از شیت اول تغییر میدهید، حال میخواهید تغییر انجام شده در تمام شیت ها اعمال گردد.

با استفاده از متد FillAcrossSheets میتوانید فرمت، داده و یا هرچیزی متعلق به یک محدوده از هر شیت را به محدوده ی مشابه در تمام شیت های فایل اکسل فعال انتقال دهید.

در کدهای زیر ابتدا فرمت خط حاشیه ی زیرین (Bottom Border Line) سلول های محدوده ی A1:H1 که در شیت اول وجود دارند را به صورت دوخط (Double Line) در میاوریم و سپس فرمت این محدوده را به تمام محدوده های مشابه در تمام شیت های دیگر انتقال میدهیم.

 

  • اجرای حلقه برای سلول های یک محدوده

در بسیاری از موارد شما برای رسیدن به خروجی مطلوب و انجام کارهای تکراری نیاز به نوشتن حلقه ها دارید (مثلاً میخواهید یک پارامتر را آنقدر تغییر بدهید تا خروجی به یک مقدار خاص برسد)، در ویژوال بیسیک برای ایجاد حلقه می توانید از حلقه های Do،  For و یا Case استفاده نمایید. در بسیاری از حلقه ها عملیات متفاوتی بر روی سلول های اکسل انجام میگیرد که در نهایت نیاز به تعریف متغیرهای سطر و ستون برای سلول ها دارید

همانطور که در مقالات قبلی یادگرفتیم، برای اشاره به سلول ها میتوانیم از پروپرتی سل (Cells Property) استفاده نماییم. بزرگترین مزیت Cells این است که اندیس نشان دهنده ی سطر و ستون هر دو میتوانند به صورت متغیر باشند.

در کد زیر، اگر قدر مطلق مقدار سلول ها A1 تا A89 کمتر از ۱۳ بود، مقدار آنها را برابر با  ExcelPro.ir قرار میدهیم. در این کدها متغیر Counter به جای شماره سطر در پروپرتی Cells قرار گرفته است.

کد زیر هم یک نمونه حلقه نوشته شده با استفاده از پروپرتی Cells است، در این کد مقدار سلول های C1 تا C20 توسط حلقه ی For و متغیر Counter به عنوان شماره سطر سلول برابر با ExcelPro قرار داده شده است.

راه دیگر برای انجام عملیات فوق برای همان سلول ها استفاده از Range میباشد که در کدهای زیر نشان داده شده است.

در صورتی که محدوده ای از سلول ها توسط کاربر در حالت انتخاب قرار گرفته باشد و برنامه نویس بخواهد برای آن محدوده عملیات فوق را انجام دهد میتواند از کدهایی مشابه کد زیر استفاده نماید. مثلاً شما در قسمتی از برنامه ی خود از کاربر بخواهید محدوده ی مورد نظر برای ادامه ی برنامه را انتخاب نماید و پس از انتخاب کدهای زیر اجرا گردد.

در صورتی که محتوای هریک از سلول های محدوده ها در کد های فوق هر چیزی غیر از عدد باشد، به علت استفاده از تابع ABS در کدها که مخصوص متغیرهای عددی است، برنامه با خطا مواجه میشود.

تمرین ویژوال بیسیک

در این مقاله یک فایل مربوط به فصل یازدهم کتاب “شروع ماکرو نویسی در اکسل” قرار داده شده است که حاوی کدهای تمرینی قرار داده شده در این کتاب میباشد. کتاب “شروع ماکرو نویسی در اکسل” توسط “حامد قدیمی” نویسنده و مدیر سایت آموزشی Excelpro.ir نوشته شده است و بر اساس این کتاب یک دوره آموزش تصویری نیز توسط ایشان تهیه شده است.

برای خرید فایل کتاب از سایت Excelpro.ir  بر روی این خط کلیک کنید.

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

برای دانلود فایل کد های نمونه و تمرینی فصل یازدهم کتاب “شروع ماکرو نویسی در اکسل” بر روی این خط کلیک نمایید.

اشتراک گذاری در شبکه های اجتماعی: share on facebook share on google plus share on linkedin

یک نظر

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