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

از ماکرونویسی نهراسید! بسیار ساده است!

صفحه اصلي | آرشيو مطالب | تماس با من                    ali_fatehi@yahoo.com

آموزش  مشاورهداستان وبلاگ من

 

كتاب ماكرونويسي و برنامه نويسي كار بردي به زبان VBA در Excel

به نگارش اينجانب منتشر شد
مولف: علي فاتحي
ناشر: انتشارات سازمان بورس

 مراكز پخش

«نمايشگاه و فروشگاه انتشارات بورس»
شماره تماس:  88648192
(تهران - ميدان ونك - خ ملاصدرا- شماره 25)
اطلاعات كتاب و سفارش خريد آنلاين از انتشارات بورس

«انتشارات صانعي»

شماره تماس:  5385  6640
(
تهران- خ انقلاب- روبروي  دانشگاه تهران- پلاك 1290)
www.saneibook.com

 

.....در زماني كوتاه و به راحتي مي توانيد در اكسل برنامه و ماكرو بنويسيد؛ حتي اگر شما برنامه نويس نباشيد ماكرونويسي و برنامه نويسي ابزاري مناسب براي كاربراني است كه مي خواهند در Excel بهتر و پوياتر عمل كنند. زبان برنامه نويسي مورد استفاده در Excel بسيار شبيه زبانهاي محاوره اي است و VBA

 (Visual Basic for Applictions )
نام دارد.
......

20 صفحه اول كتاب را از اينجا برداريد.


اين كتاب براي كاربراني نوشته شده كه با برنامه‌نويسي و ماكرونويسي آشنايي نداشته يا آشنايي كمي دارند و مي‌خواهند در نرم‌افزار اكسل كارهاي بهتر و پوياتري انجام دهند و با زباني ساده و به دور از پيچيدگي مفاهيم اوليه و كاربردي را گام به گام ارايه نموده است. مثال‌ها متنوع و كاربردي‌اند. از برنامه‌هاي ساده  و "تابع تبديل عدد به حروف" گرفته تا "پياده‌سازي مفاهيم مهندسي مالي" در كتاب آموزش داده شده‌اند..

 

 

 

 

آخرين مطالب

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

 


فرمت کلی تعریف یک تابع به صورت زیر است:

 FUNCTIONنام تابع (    ,     ,      ,     ) AS نوع داده ای خروجی تابع

 

 

دستورات و محاسبات

 محاسبات= نام تابع         

دستورات و محاسبات

 

 

 END FUNCTION

 

کلمه کلیدی Function  در ابتدا و کلمه کلیدی End Function در انتها می آید. بخشهای اصلی یک تابع به صورت زیر است:

نام تابع: لازم است برای یک تابع نام تعیین شود. قواعدی که در نامگذاری یک تابع می بایست رعایت شود همان قواعدی است که در تعیین نام یک متغیرلحاظ میگردد.

ورودی های تابع و نوع داده ای مربوط به آنها: مشخص شود که ورودی  Integer ، string و ... است.

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

محاسبات تابع: بین عبارات Function و End Function محاسبات تابع نوشته می شود.

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

نکته : در صورتی که نوع داده ای ورودی های تابع یا خروجی آن اشاره نشود نوع داده ای Variant ‌ برای آن درنظرگرفته می شود.

 

 

مثال : می خواهیم تابعی بنویسیم که درآمد، هزینه و درصد مالیات را دریافت نموده و  خالص در آمد را محاسبه نماید:

 

Function netprofit(income, cost, tax) As Variant

t = 1 - tax

netprofit = (income - cost) * t

End Function

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

الف- استفاده از منوی  

وارد محیط excel  می شویم. از گزینه insert حالت function  را انتخاب می کنیم.در پنجره باز شده از کمبو باکس مقابل عبارت select a category  or گزینه user difind را انتخاب می کنیم.ملاحظه می کنیم که تابع  جدید ما در اینجا وجود دارد.

 

 

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

=NETPROFIT(A1;B1;C1)

بدیهی است  A1;B1;C1 در اینجا به ترتیب در بر گیرنده در آمد، هزینه و درصد مالیات می باشد.

مثال:

می خواهیم تابعی بنویسیم که سن افراد را بگیرد و چنانچه زیر 18 سال است بگوید خیلی جوان، بین 18 تا 65 را مناسب و بالای 65 سال را به عنوان خیلی پیر معرفی نماید.ساختار چنین تابعی به شکل زیر می باشد:

Function check_old(old)

              Select Case old

                 Case Is <= 18

                        check_old = "too young"

                  Case 18 To 65

                          check_old = "ok"

                  Case Is > 65

                             check_old = "too old"

            End Select

End Function

 

مثال دوم:

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

چنین برنامه ای به شکل زیر نوشته می شود:

Function BMI(weight, height)

                    BMI = weight / (height ^ 2)

End Function

 

Function check_weight(BMI)

                    Select Case BMI

                               Case Is <= 15

                                                check_weight = "under weight"

                               Case 15 To 25

                                                 check_weight = "normal"

                               Case Is > 25

                                                check_weight = "over weight"

                     End Select

End Function

 

ADD-INSها

تابعی که ما دراین جلسه معرفی نمودیم تنها در همان WORKBOOK ای که برنامه در آن نوشته شده است کاربرد دارد. چنانچه ما بخواهیم یک FUNCTION  یا چندین Function  به عنوان توابع قابل استفاده درتمام workbook های دیگر باشد، می بایست از روش زیر استفاده نمود:

- نوشتن توابع: تابع یا توابع مورد نظر را در یک workbook ایجاد می کنیم.

ایجاد ADD-IN:workbook شامل توابع  را با فرمت ADD-INS  ذخیره می کنیم. برای این منظوردر محیط اکسل از گزینه FILE منوی SAVE AS را انتخاب می کنیم. در پنجره موجود از کمبو باکس زیر صفحه آخرین گزینه را یعنیMICOSOFT EXCELL AD-IN را انتخاب کرده و در هر جایی که مایلیم چنین برنامه هایی SAVE  شوند، ذخیره می نماییم.

افزودن ADD-IN به اکسل: از منوی TOOLS گزینه ADD-INS را انتخاب می کنیم و در پنجره موجود کنار برنامه ای که نوشته شده است را تیک می زنیم.از هم اکنون توابع  جدید نوشته شده ما به عنوان توابع ثابتی در کلیه workbook ‌ها قابل استفاده است.

 

 

 

.: Weblog Themes By Iran Skin :.

درباره وبلاگ

آرشيو مطالب
امکانات وب