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

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

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

Captcha

آمار بازدید

  • بازدید امروز : 69
  • بازدید دیروز : 22
  • بازدید کل : 80753

سؤالات متداول VBA


سؤالات متداول VBA

VBA چیست؟

VBA مخفف Visual Basic for Applications است. این زبان برنامه نویسی است که می توانید برای حودکار کردن وظایفی در اکسل از آن استفاده کنید.

مزایای استفاده از VBA در اکسل چیست؟

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

VBA به شما امکان می دهد با ایجاد کدهایی که می توانند اقداماتی را به صورت خودکار انجام دهند ، توانایی Excel را ارتقا بخشید. در زیر برخی از کارهایی که می توانید با VBA انجام دهید لیست شده است:

  •   متن های تکراری وارد کنید. بعضی اوقات ممکن است لازم باشد متن استانداردی را در طیف وسیعی از سلول ها وارد کنید. می توانید بجای تایپ آن ماکرو ایجاد کنید.به عنوان مثال ، می توانید یک متن استاندارد را برای پیام فکس ایجاد کنید که شامل تمام اطلاعاتی است که تغییر نمی کند ، مانند نام ، آدرس و شماره تلفن. سپس هر زمان که می خواهید یک فکس جدید ارسال کنید ، به جای کپی کردن مجدد اطلاعات ، ماکرو را اجرا کنید تا متن استاندارد را وارد کنید.
  •  مراحلی را که مرتباً در اکسل انجام می دهید ، خودکار کنید. به عنوان مثال ، ممکن است نیاز به تهیه گزارش فروش پایان ماه داشته باشید. می توانید یک ماکرو ایجاد کنید تا این کار را برای شما انجام دهد.
  • عملیات تکراری را خودکار کنید. اگر نیاز به انجام کاری در فایل های مختلف دارید ، می توانید هنگام انجام آن برای بار اول ، یک ماکرو ضبط کنید. سپس به ماکرو اجازه دهید عمل خود را در فایل های دیگر تکرار کند.
  • یک دستور سفارشی ایجاد کنید. به عنوان مثال ، می توانید چندین دستور اکسل را با هم ترکیب کنید ,که تنها با فشردن یک کلید صفحه کلید یا کلیک ماوس اجرا شوند.
  • می توانید برای کاربرانی که اطلاعات زیادی در مورد اکسل ندارند ، پیشاپیش الگوهای ساده ای  ایجاد کنید. به عنوان مثال ، می توانید یک الگوی هزینه ماهانه بدون خطا را تنظیم کنید.
  • می توانید یک تابع جدید ایجاد کنید. اگرچه اکسل طیف گسترده ای از توابع داخلی را دارد ، اما می توانید توابع سفارشی نیز بسازید که فرمول های شما را بسیار ساده می کند.
  • برنامه های کاملی مبتنی بر ماکرو ایجاد کنید. می توانید با استفاده از ماکروی اکسل پنجره های محاوره ای سفارشی ایجاد کرده و دستورات جدیدی را به ریبون اکسل اضافه کنید.
  • افزونه (add-in) های سفارشی برای اکسل ایجاد کنید. بیشتر افزونه های موجود برای اکسل با ماکروهای اکسل ساخته شده اند.

ماکروی اکسل چیست؟

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

در بسیاری از موارد ، کاربران تمایل دارند از عبارات کد VBA و ماکرو به صورت جایگزینی برای هم استفاده کنند.

چگونه می توان یک ماکرو را در اکسل ضبط کرد؟

حتی اگر چیزی در مورد VBA نمی دانید ، باز هم می توانید برخی از ماکرو ها را ایجاد و کارهای خود را خودکار کنید.

می توانید این کار را با ضبط ماکرو انجام دهید.

اکسل هنگامی که ماکرویی ضبط می کنید ، اقداماتی را که انجام می دهید ، تماشا می کند و آن را به زبانی که می فهمد یادداشت می کند ، که VBA است.

اکنون ، هنگامی که ضبط را متوقف می کنید ، ماکرو را ذخیره کرده و آن را اجرا کنید ، اکسل به سادگی به کد VBA تولید شده برمی گردد و دقیقاً همان مراحل را دنبال می کند.

این بدان معناست که حتی اگر شما چیزی در مورد VBA نمی دانید ، می توانید با کمک اکسل مراحل خود را یکبار انجام دهید و بعداً دوباره از این موارد استفاده کنید.

می توانید با استفاده از گزینه Record Macro که در زبانه Developer قرار دارد ، یک ماکرو ضبط کنید.

ضبط ماکرو در اکسل

هنگامی که ماکرو را ضبط کردید ، اکسل آن را با نام مشخص شده ذخیره می کند و سپس می توانید به راحتی هر بار که می خواهید از آن استفاده کنید.

می توانید اطلاعات بیشتری در مورد ضبط یک ماکرو را اینجا بخوانید.

ضبط ماکرو در اکسل چه محدودیت هایی دارد؟

اگر چه ضبط ماکرو یک روش عالی برای تولید سریع کد است ، محدودیت های زیر را دارد:

  • نمی توانید کد را بدون انتخاب شیء اجرا کنید. اگر می خواهید ضبط کننده ماکرو به برگه اکسل بعدی برود و تمام سلول های پر شده ستون A را هایلایت کند ، بدون اینکه از برگه فعلی خارج شوید ، قادر به انجام این کار نخواهید بود. اگر من از شما بخواهم این کار را انجام دهید ، حتی شما نیز قادر به انجام این کار نخواهید بود (بدون خارج شدن از برگه فعلی) و اگر شما نمی توانید خودتان این کار را انجام دهید ، ضبط کننده ماکرو اقدامات شما را چگونه ضبط کند. در چنین مواردی ، باید به صورت دستی کد را ایجاد یا ویرایش کنید.
  • نمی توانید با ابزار ضبط ماکرو توابع سفارشی ایجاد کنید. با استفاده از VBA ، می توانید توابع سفارشی ایجاد کنید که می تواند در برگه اکسل همانند توابع داخلی اکسل از آنها استفاده کنید. می توانید با نوشتن کد به صورت دستی این توابع را ایجاد کنید.
  • نمی توانید کدها را بر اساس رخدادهایی اجرا کنید. در VBA می توانید از بسیاری از رخدادها - مانند باز کردن یک فایل اکسل ، ایجاد یک برگه جدید ، دوبار کلیک روی یک سلول و غیره ، برای اجرای یک کد مرتبط با آن رخداد استفاده کنید. برای این کار نمی توانید از ابزار ضبط ماکرو استفاده کنید.
  • با ضبط کننده ماکرو نمی توانید حلقه ی تکرار ایجاد کنید. هنگامی که به طور دستی کد را وارد می کنید ، می توانید قدرت حلقه ها را در VBA (مانند For Next، For Each Next، Do While، Do until) اعمال کنید. اما هنگامی که یک ماکرو ضبط می کنید ، نمی توانید این کار را انجام دهید.
  • نمی توانید شرایط را تجزیه و تحلیل کنید: می توانید با استفاده از ضبط کننده ماکرو ، شرط های موجود در کد را بررسی کنید. اگر یک کد VBA را به صورت دستی می نویسید ، می توانید از دستورهای IF Then Else استفاده کنید تا یک وضعیت را تجزیه و تحلیل کرده و یک کدی را در صورت برقرار بودن شرط اجرا کنید (یا در صورت برقرار نبودن شرط کد دیگری را اجرا کنید).

UDF در VBA اکسل چیست؟

UDF یک تابع تعریف شده توسط کاربر در VBA است , که توابع سفارشی نیز گفته می شود.

با استفاده از VBA ، می توانید یک تابع سفارشی (UDF) ایجاد کنید که می تواند دقیقاً مانند توابع برگه اکسل استفاده شود.

در مواردی که توابع برگه اکسل کافی نباشد ، توابع سفارشی مفید هستند. در چنین مواردی ، می توانید UDF های دلخواه خود را تهیه کنید تا نیازهای خود را تأمین کنید.

رخدادها در VBA چیست؟

در VBA ، رخداد عملی است که می تواند باعث اجرای ماکروی مشخص شده شود.

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

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

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

برخی از حلقه های مفید VBA چیست؟

حلقه های زیر در VBA وجود دارد:

  • For Next
  • Do While
  • Do Until
  • For Each Next

راه های مختلف اجرای یک ماکرو در اکسل چیست؟

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

  • ماکرو را به یک شکل اختصاص دهید.
  • ماکرو را به یک دکمه اختصاص دهید.
  • ماکرو را از ریبون (زبانه Developer) اجرا کنید.
  • ماکرو را از ویرایشگر ویژوال بیسیک اجرا کنید.
  • ماکرو را با استفاده از میانبر صفحه کلید ، اجرا کنید.
  • ماکرو را با استفاده از ماکروی دیگر فراخوانی کنید.

UserForm چیست؟

UserForm یک پنجره محاوره ای است که می توانید در VBA طراحی و ایجاد کنید.

پس از ایجاد ، به روش های مختلفی در برگه اکسل قابل استفاده است:

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

افزونه (add-in) چیست؟

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

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

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

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

  انتشار : ۹ مهر ۱۳۹۸               تعداد بازدید : 285

برچسب های مهم

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

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

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