خوش آمدید به رمان ۹۸ | بهترین انجمن رمان نویسی

رمان ۹۸ با هدف ترویج فرهنگ کتاب خوانی و تقویت قلم عزیزان ایجاد شده است.
هدف ما همواره ایجاد محیطی گرم و صمیمی و دوستانه بوده
برای مطالعه کامل رمان‌ها و استفاده از امکانات انجمن
به ما بپیوندید و یا وارد انجمن شوید.

M O B I N A

سرپرست بخش فرهنگ و ادب
عضو کادر مدیریت
کاربر V.I.P انجمن
سرپرست بخش
ناظر کتاب
منتقد انجمن
  
  
عضویت
3/4/21
ارسال ها
24,702
امتیاز واکنش
63,861
امتیاز
508
سن
19
محل سکونت
BUSHEHR
زمان حضور
273 روز 8 ساعت 23 دقیقه
نویسنده این موضوع
VBA چیست؟

VBA مخفف Visual Basic for Applications یک زبان برنامه نویسی است که در مجموعه برنامه‌های آفیس استفاده می‌شود. همین‌جا باید متذکر شویم که VBA در نرم افزارهای تخصصی دیگر از جمله AutoCad، ARCGIS و غیره نیز قابل استفاده است.

این زبان در واقع زیر مجموعه‌ای از Visual Basic 6.0 است که شباهت‌هایی هم به زبان VB دارد اما این دو از یکدیگر جدا بوده و زبان‌های برنامه‌نویسی متفاوتی هستند. زبان VB بیشتر برای توسعه برنامه دسکتاپ مورد استفاده قرار می‌گیرد، در صورتی که از زبان VBA فقط می‌توانیم در محیط برنامه‌های دیگر نظیر اکسل، استفاده کنیم.


کاربرد VBA در اکسل

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

در تمامی موارد ذکر شده می‌توان با استفاده از زبان VBA در اکسل کدی نوشت که قسمتی از اکسل، کاری را به صورت خودکار انجام دهد و لازم نباشد کاربر خود به صورت دستی همان کار را انجام دهد. به عنوان مثال می‌توان یک برنامه ثبت سفارش خرید و فروش کالا را با خروجی‌های مختلف ایجاد کرده و اطلاعات را ساماندهی و گزارش‌های ماهیانه و سالیانه تهیه کرد.

VBA در اکسل، به طور خودکار اکسل را نرم افزار میزبان فرض می‌کند و دیگر لازم نیست در ابتدای کدها حتما نوع نرم افزار (به عنوان مثال ورد، اکسل، پاورپونت و …) را مشخص کنیم. به جز مواردی که بخواهیم از طریق برنامه نویسی در اکسل، نرم افزار‌های دیگری را کنترل کنیم.

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

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

  • اکسل همیشه کار را به همان روشی که برنامه نویسی کردیم، انجام می‌دهد که این باعث ثبات در کارها می‌شود.
  • سرعت انجام کارها در اکسل بالاتر از انجام کار به شیوه دستی می‌شود.
  • اگر یک برنامه نویس خوب ماکرو باشیم، اکسل اغلب کارها را بدون خطا انجام می‌دهد.
  • اگر دستورات به درستی نوشته و تنظیم شده باشد، هر کاربر آشنا به اکسل می‌تواند کارها را در اکسل با اجرای ماکرو انجام دهد.
  • با برنامه نویسی VBA ما می‌توانیم کارهایی را در اکسل انجام دهیم که امکان انجام آن به صورت دستی غیرممکن است و این می‌تواند ما را تبدیل به یک فرد محبوب در محل کار کند.
  • برای انجام کارهای طولانی و وقت گیر، دیگر نیازی نیست دائم جلوی رایانه خود بنشینیم و خود را خسته کنیم، بلکه اکسل خود همه کارها را بصورت اتوماتیک در حالی که ما در حال استراحتیم، انجام می‌دهد.


همه چیز درباره برنامه نویسی در اکسل با (VBA) + آموزش یک مثال عملی

 
  • عالی
Reactions: -FãTéMęH-

M O B I N A

سرپرست بخش فرهنگ و ادب
عضو کادر مدیریت
کاربر V.I.P انجمن
سرپرست بخش
ناظر کتاب
منتقد انجمن
  
  
عضویت
3/4/21
ارسال ها
24,702
امتیاز واکنش
63,861
امتیاز
508
سن
19
محل سکونت
BUSHEHR
زمان حضور
273 روز 8 ساعت 23 دقیقه
نویسنده این موضوع
معایب استفاده از VBA

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

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

در ادامه سعی می‌کنیم با یک مثال ساده، شما را با نحوه برنامه نویسی در اکسل آشنا کنیم. در برنامه‌ی ما، فرمی نمایش داده می‌شود و نام کاربر را می‌پرسد، سپس کاربر با واردکردن نام خود، پیغامی دریافت می‌کند.

مبانی اولیه برنامه نویسی VBA

قبل از اینکه بتوانیم کدنویسی را آغاز کنیم، نیاز داریم کمی با اصول اولیه برنامه نویسی آشنا شویم. مبانی زیر برای شروع کار به ما کمک می‌کند:

  • متغیر (Variable): در مدرسه عبارت (x+2y) را به ما می‌دادند و می‌گفتند جواب را در صورتی x = 1 و y = 3 باشد را پیدا کنید، در این عبارت x و y متغیر هستند. همانطور که در مثال وجود دارد به متغیر‌ها هر عددی مثلا همین 1 و 3 را می‌توان اختصاص داد، یا آنها می‌توانند به ترتیب 2 و 4 تغییر کنند. متغیر‌ها به طور خلاصه محلی در حافظه هستند.
  • قوانین نامگذاری متغیر ها
    • از کلمات رزرو شده نمی‌توان به عنوان اسم متغیر، استفاده کرد: اگر فرضا ما دانشجو باشیم نمی‌توانیم از عناوین استاد یا مدرس استفاده کنیم، زیرا این عناوین مختص استادان و مسئولان دانشگاه است. در VBA نیز بعضی کلمات که معنی ویژه ای دارند به عنوان کلمات رزرو شده تعیین شده اند و ما نمی‌توانیم از آنها به عنوان نام متغیر استفاده کنیم.
    • در نام متغیر نمی‌توان از فاصله استفاده کرد: ما نمی‌توانیم دو کلمه جدا شده از هم را بعنوان نام متغیر استفاده کنیم. به عنوان مثال first number صحیح نیست و باید برای نامگذاری به این صورت firstNumber یا first_number استفاده کنیم.
    • از اسامی توصیفی برای نامگذاری استفاده کنید: بسیار وسوسه انگیز است که نام متغیر خود را variable بگذاریم اما باید از این کار اجتناب کنیم. بهتر است از نام‌های توصیفی مانند رنگ، قیمت، جنس و غیره استفاده کنیم که تاثیر فراوانی در خوانایی کد VBA ما دارد.
  • عملگر‌های حسابی: این عملگرها برای محاسبات استفاده می‌شوند و از اولویت عمگرها یا قوانین BODMAS که مخفف انگلیسی کلمات براکت ها، تقسیم، ضرب، جمع و تفریق است، تبعیت می‌کنند. بنابراین به یاد داشته باشید هنگام کار با عبارتی که حاوی چندین عملگر حسابی است، از این قوانین برای اولویت عملگر استفاده کنید.
    • + برای اضافه کردن
    • – برای تفریق
    • * برای ضرب
    • / برای تقسیم
  • عملگر‌های منطقی – بر روی عبارات منطقی اعمال می‌شود و نتیجه یا درست (True) یا نادرست (False) است. از این عملگرها برای شرط‌ها استفاده می‌شود.
    • If statements
    • OR
    • NOT
    • AND
    • TRUE
    • FALSE


همه چیز درباره برنامه نویسی در اکسل با (VBA) + آموزش یک مثال عملی

 
  • تشکر
Reactions: -FãTéMęH-

M O B I N A

سرپرست بخش فرهنگ و ادب
عضو کادر مدیریت
کاربر V.I.P انجمن
سرپرست بخش
ناظر کتاب
منتقد انجمن
  
  
عضویت
3/4/21
ارسال ها
24,702
امتیاز واکنش
63,861
امتیاز
508
سن
19
محل سکونت
BUSHEHR
زمان حضور
273 روز 8 ساعت 23 دقیقه
نویسنده این موضوع
دسترسی به گزینه‌های توسعه دهنده را فعال کنید

برای استفاده از VBA در اکسل باید گزینه توسعه دهنده را فعال کنیم تا زبانه Developer برای ما نمایش داده شود که برای این کار از طریق منوی File به بخش Options می رویم و سپس گزینه Ribbon Customize را کلیک می‌کنیم.

ضمنا می‌توانیم به صورت میانبر روی هر کدام از زبانه‌ها راست کلیک کنیم و گزینه Customize the Ribbon کلیک کنیم. در بخش Ribbon Customize از قسمت Main Tabs گزینه Developer را فعال می‌کنیم.

excel1-400x240.jpg

سلام VBA

اکنون نحوه کد نویسی در VBA را بررسی می‌کنیم. تمام برنامه VBA باید با “Sub” شروع و با “End Sub” پایان یابد. در کنار sub نامی که می‌خواهیم به برنامه اختصاص دهیم نوشته می‌شود. تکه کد زیر، پایه تمامی کدهایی هست که خواهیم نوشت
Sub name()
End Sub
ساخت یک دکمه در اکسل
یک WorkBook جدید باز می‌کنیم و به زبانه Developer می‌رویم و از قسمت Controls روی جعبه کشویی Insert کلیک می‌کنیم و دکمه فرمان را مطابق تصویر انتخاب می‌کنیم.

excel2-400x2403207ab151dd39cd0.jpg


همه چیز درباره برنامه نویسی در اکسل با (VBA) + آموزش یک مثال عملی

 
  • تشکر
Reactions: -FãTéMęH-

M O B I N A

سرپرست بخش فرهنگ و ادب
عضو کادر مدیریت
کاربر V.I.P انجمن
سرپرست بخش
ناظر کتاب
منتقد انجمن
  
  
عضویت
3/4/21
ارسال ها
24,702
امتیاز واکنش
63,861
امتیاز
508
سن
19
محل سکونت
BUSHEHR
زمان حضور
273 روز 8 ساعت 23 دقیقه
نویسنده این موضوع
می توانیم دکمه ایجاد شده را به هر کجا که خواستیم منتقل کنیم. بعد از تثبیت دکمه، پنجره محاوره ای زیر نمایان می‌شود.



نام ماکرو را به btnHelloWorld_click تغییر می‌دهیم و روی گزینه New کلیک می‌کنیم که پنجره کد نویسی نمایش داده می‌شود.

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

Dim name As String

name = InputBox(“لطفا نام خود را وارد کنید”)

MsgBox “ سلام” + name

که در اینجا:

  • ” Dim name As String” متغیری به نام name ایجاد می‌کند. متغیر متن، عدد و سایر کارکترها را می‌پذیرد، زیرا ما آن را به عنوان رشته تعریف می‌کنیم.
  • ” name = InputBox(“لطفا نام خود را وارد کنید”)” تابع ساخته شده InputBox را فراخوانی می‌کندکه یک پنجره را با عنوان لطفا نام خود را وارد کنید، را نمایش می‌دهد. سپس نام وارد شده در متغیر name ذخیره می‌شود.
  • ” MsgBox “ سلام” + name” تابع ساخته شده MsgBox را فراخوانی می‌کند تا سلام به همراه نام وارد شده را در کادر نمایش دهد.
پنجره کامل شده کد کامل باید به شکل زیر باشد

excel3-400x24072137d2b744e3584.jpg

پنجره کد را می‌بندیم و بر روی Button 1 راست کلیک کرده و Edit text را انتخاب می‌کنیم و نام آن را به “گفتن سلام” تغییر می‌دهیم. اکنون روی دکمه گفتن سلام کلیک می‌کنیم و در کادر ورودی نام خود را وارد کرده و تایید می‌کنیم. با انجام این کار، کادر پیغام سلام نمایش داده می‌شود.


خب تبریک! ما موفق شدیم اولین برنامه خود را با VBA در اکسل بنویسیم. این فقط یک مثال ساده بود که جهت آشنایی شما با این زبان برنامه نویسی آورده شد. VBA به قدری قدرتمند است که می‌توان برنامه‌های بسیار پیچیده ای در آن کد نویسی کرد.

جمع بندی

با توجه به طیف گسترده‌ی کاربران اکسل و نیز کاربردی بودن آن، لزوم خودکارسازی کارها در اکسل به شدت احساس می‌شود. زبان برنامه‌نویسی VBA با قدرت و توانایی هایی که دارد، توانسته در محیط اکسل، امکاناتی برای کاربران مهیا کند که آنها را از انجام کارهای تکراری و پیچیده خلاص کند.
ما در این مقاله گفتیم که VBA چیست و چه مزایا و معایبی دارد. با یک مثال خیلی ساده، شما را با محیط کدنویسی VBA آشنا کردیم و این می‌تواند شروعی برای کارهای بزرگتر باشد. هر فردی که علاقمند به مباحث اکسل و برنامه نویسی در اکسل است، می‌تواند با مراجعه به منابع آموزشی فراوانی که برنامه نویسی VBA دارد، آغاز به برنامه نویسی در این حوزه کند.
#سون_لرن


همه چیز درباره برنامه نویسی در اکسل با (VBA) + آموزش یک مثال عملی

 
  • تشکر
Reactions: -FãTéMęH-
shape1
shape2
shape3
shape4
shape7
shape8
بالا