| خانه | آرشیو | پست الکترونیک |
|
حلقه ها در وي ب ي اي LOOPS IN VBA EXCEL 2007
FOR يكي از پر كاربردترين نوع حلقه در زبان هاي برنامه نويسي است و براي شمارش بكار ميرود. ساختارش چنين است :
FOR انتها تو ابتدا = شمارنده STEP گام عمليات NEXT مثال : در ساختار زير سلول هاي ستون A تا A100 از 1 تا 100 پر مي شوند: FOR I=1 TO 100 CELLS(I,1)=I NEXT مثال : جدولي در كاربرگ 1 طراحي كنيد كه شامل ستون نام و دريافتي و ماه دريافت باشد ، سپس اسامي چند نفر را در آن وارد نماييد ( تكراري هم داشته باشد ) آنگاه ماكرويي طراحي كنيد كه نام فرد را دريافت كرده سپس جمع كل دريافتي هاي وي را نمايش دهد .
|+| نوشته شده توسط علی توضیح در دوشنبه نهم دی 1387 و ساعت 9:40 |
SELECT CASE IN VBA
يكي ديگر از ابزار هاي كنترلي در وي بي اي SELECT CASE است . اين ابزار مانند چند IF تو در تو است و شكل آن به صورت زير است :
SELECT CASE متغير CASE محدوده 1 عمليات 1 CASE محدوده 2 عمليات 2 CASE ELSE عمليات END SELECT به طور مثال ساختاري طراحي كنيد كه عددي را از كاربر گرفته و سپس رده ي آنرا مشخص كند: 1-اگر عدد 1 يا 2 يا 3 باشد رده A 2- اگر عدد بزرگتر از 3 و كوچكتر از 7 باشد رده ي B 3- اگر عدد بزرگتر از 7 باشد رده ي C 4- در غير اين صورت پيام خطا صادر كند. نمايش داده شود: SUB TEST() DIM X! X=INPUTBOX("X:") SELECT CASE X CASE 1,2,3 MSGBOX " A" CASE 3 TO 7 MSGBOX " B" CASE IS > 7 MSGBOX "C" CASE ELSE MSGBOX " ERROR" END SELECT END SUB
|+| نوشته شده توسط علی توضیح در دوشنبه نهم دی 1387 و ساعت 9:9 |
استفاده از ساختارهای کنترلی در وی بی ای اکسل if , select case
if يكي از پر كاربرترين ابزارهاي وي بي اي در عمليات كنترلي است.
ساختار آن به شرح زير است: if شرط then عمليات elseif شرط then عمليات else عمليات endif
مثال - دو عدد را از كاربر گرفته اگر مساوي باشند كلمه مساوي و درغير اين صورت نامساوي را نمايش دهد. sub test1() dim a! dim b! a=inputbox("a") b=inputbox("b") if a=b then msgbox "equal" else msgbox " not equal" endif end sub مثال 2- دو عدد درون a1 , b1 را مقايسه كند و هر كدام كه كوچكتر است را پاك كند . مثال 3- اسامي و حقوق مبناي چند كارمند را دريافت كرده اگر حقوق بيش از 400$ باشد ماليات 10 درصد محاسبه شود در غير اين صورت 7 درصد محاسبه شود. مثال ۴- میانگین اعداد درون ستون A از كاربرگ 1 را با همين ستون از كاربرگ 2 مقايسه كرده هر كدام كه بزرگتر بود نام آن كاربرگ به MAX تغيير يابد. نكات اين تمرين :براي تغيير نام مثلا كابرگ 1 : SHEETS(1).NAME="MAX" براي استفاده از يك تابع درون وي بي اي از APPLICATION.WORKSHEETFUNCTION. نام تابع I = APPLICATION.WORKSHEETFUNCTION.AVERAGE(RANGE("A:A")) (اين فرمول ميانگين تمام اعداد درون ستون A را به درون متغيير I مي ريزد.) استفاده مي كنيم . توجه داشته باشيد كه توابع مشخص هستند و مقادير آنها بايد درون يك متغيير ريخته شود. توجه كنيد براي انتخاب كاربرگ يك مي توان از دستور زير استفاده كرد : SHEETS(1).SELECT
|+| نوشته شده توسط علی توضیح در چهارشنبه چهارم دی 1387 و ساعت 13:9 |
آرايه ها در و ي بي اي اكسل ARRAY IN VBA EXCEL
آرايه مجموعه اي از داده هاست كه به ترتيب در كنار يكديگر قرار مي گيرند به طور مثال A يك آرايه با 5 عضو است كه چهار تاي آن عددي و يكي از آنها متني است.
A={ 1 , 2.57 , 17 , "ALI" , 122 } آرايه ها يا يك بعدي هستند يا چند بعدي تعريف يك آرايه يك بعدي در وي بي اي مانند تعريف يك متغير انجام مي پذيرد :مثال DIM A(5) AS STRING كه در آن پس از كلمه ديم نام آرايه و انتهاي آن ذكر مي گردد و در انتها نوع داده هاي آن آرايه ها هميشه از ابتداي صفر آغاز مي كنند به تصاوير زير دقت كنيد
توجه كنيد كه دو عنصري از آرايه كه مقدار دهي نشده اند صفر در نظر گرفته شده اند . براي اينكه يك آرايه يك بعدي از ابتداي يك آغاز كند مي توان در تعريف آن به روش زير اقدام كرد DIM ALIARR(1 TO 7) AS SINGLE
كه 7 عنصر از جنس سينگل دارد با ابتداي يك aliarr يك آرايه يك بعدي با نام براي پر كردن يك آرايه كافي است عناصر آنرا پر كنيم A(1)="ALI" A(2)=22 A(3)="ALI TOZIH" A(6)="REZA" |+| نوشته شده توسط علی توضیح در پنجشنبه بیست و هشتم آذر 1387 و ساعت 7:45 |
تمرين وي بي اي VBA EXCEL
تمرين - فرض كنيد ليستي داريد به شكل زير ، كه از سلول A2 آغاز شده است . حال قصد داريم تابعي طراحي كنيم كه با ارسال سلول آغازين ليست به آن تعداد سطر هاي ليست محاسبه شود .
|+| نوشته شده توسط علی توضیح در شنبه بیست و سوم آذر 1387 و ساعت 11:26 |
ارسال يك متغير به يك ماكرو يا تابع در وي بي اي اكسل
براي جلو گيري از استفاده ي تكراري از تابع inputbox كافي است متغيرهاي مورد استفاده را به صورت پارامتر يا آرگومان به تابع يا ماكرو ارسال كنيم ،براي اين منظور كافي است متغير ها را درون پرانتز جلوي نام تعريف كنيم :
function ali_link(a as string, b as string) ali_link = a & " " & b end function اين تابع دو رشته را از كاربر دريافت كرده آنها را با يك فاصله در كنار هم قرار داده و به خروجي تابع ارسال مي كند. براي استفاده از آن كافي است آنرا به همراه دو متغيرش درون يك ماكرو صدا بزنيم : sub ali_text() msgbox ali_link("ali","tozih") end sub |+| نوشته شده توسط علی توضیح در جمعه بیست و دوم آذر 1387 و ساعت 8:0 |
مثال هاي توابع و ماكرو ها در VBA EXCEL
مثال ۱- ماكرويي طراحي كنيد كه نام و نام خانوادگي را از كاربر گرفته سپس آنها را در كنار هم در يك جعبه پیام نشان دهد .
مثال 2 - در مثال بالا نام و نام خانوادگي زير هم در يك جعبه نام قرار گيرند ( VBCR) مثال 3 - ماكرويي طراحي كنيد كه شعاع يك دايره را گرفته محيط و مساحت آنرا نمايش دهد. مثال 4 - مثال بالا را با استفاده از يك ماكرو و دو تابع محيط و مساحت انجام دهيد . مثال 5 - تابعي طراحي كنيد كه ميانگين وزني اعداد داده شده را محاسبه نمايد: عدد : 10 31 15 5 ضريب :2 4 7 9 توجه كنيد كه تابع بايد هر 8 عدد را دريافت كند. مثال 6 - تابعي طراحي كنيد كه قادر باشد با دريافت ضرايب عددي معادله درجه اول ax+b=0 آنرا حل كرده جوابش را بازگرداند. |+| نوشته شده توسط علی توضیح در جمعه بیست و دوم آذر 1387 و ساعت 7:50 |
انواع عملگرها در وي بي اي اكسل VBA EXCEL OPERATOR
|+| نوشته شده توسط علی توضیح در جمعه بیست و دوم آذر 1387 و ساعت 7:35 |
توابع FUNCTIONS در وي بي اكسل
از آنجا كه ماكرو ها قادر به بازگرداندن يك مقدار به عنوان خروجي نيستند ، توابع نوع ديگري از ساختار تشكيل دهنده ماژول ها را معرفي مي كنيم:
ساختار يك تابع ( FUNCTION ) شبيه يك ماكرو است با اين تفاوت كه بجاي كلمه ي SUB از كلمه ي FUNCTION استفاده ميشود : (اين تابع عدد اول را به توان عدد دوم مي رساند ) FUNCTION AVW() DIM I AS SINGLE , J AS SINGLE I= INPUTBOX(" I :") J=INPUTBOX(" J: ") AVW =I ^ J END FUNCTION نكته ي قابل توجه اينست كه جواب خروجي يك تابع هميشه بايد درون نام تابع ريخته شود.
|+| نوشته شده توسط علی توضیح در جمعه بیست و دوم آذر 1387 و ساعت 7:18 |
صدا زدن ماكروها CALL
براي استفاده از يك ماكرو درون ماكرو هاي ديگر كافي است ابتدا ماكرو را تعريف كرده سپس درون يك ماكرو ديگر با استفاده از كلمه ي كليدي CALL آنرا صدا بزنيم :
SUB TEST3() DIM S AS STRING * 5 S= INPUTBOX("YOUR NAME ") END SUB ______________________________________ SUB TEST4() CALL TEST3 END SUB ماكرو TEST3 درون ماكرو TEST4 صدا زده شده است . به اين نكته توجه كنيد كه هر گاه بخواهيم يك ماكرو فقط در همان ماژول تعريف شده ، شناخته شود كافي است قبل از كلمه ي كليدي SUB از كلمه ي كليدي PRIVATE استفاده شود . * |+| نوشته شده توسط علی توضیح در جمعه بیست و دوم آذر 1387 و ساعت 7:11 |
انواع متغير ها در زبان VBA در اكسل 2007
همانطور كه در جلسات قبل ذكر كرديم متغير ها در زبان وي بي اكسل چند دسته اند :
1- عددي 2- غير عددي 3- ثابت ها 4- كاربر ساخته كه محدوده ي هر كدام را در زير مشاهده ميكنيد ( راهنماي اكسل 2007 ) :
The following table shows the supported data types, including storage sizes and ranges.
اين متغير هاكه با كلمه ي كليدي DIM معرفي مي شوند حيطه ي فعاليت ( اثر ) مشخصي دارند : 1- متغير هاي ماكرو 2- متغير هاي ماژول 3- متغيرهاي پروژه ( سراسري) 1- متغير هايي كه در سطح ماكرو تعريف مي شوند تنها در همان ماكرو شناخته مي شوند. SUB TEST1() DIM A AS SINGLE A=INPUTBOX(" ENTER A NUMBER :") MSGBOX A END SUB 2- اما نوع دوم متغير ها آنهايي هستند كه بايد درون تمام ماکروهای يك ماژول شناخته شوند ، براي اينكار كافي است متغير را در ابتداي ماژول قبل از تمام ماكروها ( قسمت اعلان يا DECLARATION) تعريف كرد و سپس در تمام ماکرو های آن ماژول میتوان از آن استفاده کرد: ۳- اما اگر بخواهیم این متغیر در تمام ماژول های یک پروژه شناخته شود کافی است در قسمت اعلان بجای کلمه ی dim از كلمه ي GLOBAL استفاده كنيم .در اين حالت متغير سراسري شده و در تمام ماكرو ها ي يك پروژه شناخته مي شود. GLOBAL S AS STRING در ضمن بايد بدانيم كه مجموعه ماكرو ها تشكيل يك ماژول داده و مجموعه ي ماژول ها تشكيل يك پروژه را مي دهد . نكته 1 : اگر بخواهيم درون يك ماكرو پس از اتمام آن مقادير متغير هايش تهي نشود كافي است بجاي DIM از واژه كليدي STATIC استفاده كنيم . در اين حالت حتي پس از اتمام ماكرو مقادير متغير ايستا حفظ شده تا مقادير جديد به آن تعلق پيدا كند. |+| نوشته شده توسط علی توضیح در پنجشنبه بیست و یکم آذر 1387 و ساعت 10:26 |
ايجاد DEVELOPER TAB در اكسل 2007
براي كار با VBA و ماكروها كاربران نياز به ايجاد يك تب يا برگه دان جديد دارند به نام DEVELOPER که مراحل نصب آنرا در EXCEL 2007 ملاحظه مي نماييد:
|+| نوشته شده توسط علی توضیح در دوشنبه هجدهم آذر 1387 و ساعت 11:30 |
تمرین IF
تمرین IF : ماکرویی طراحی کنید که نمره ی دانش آموزی را از کاربر گرفته اگر
0=<نمره =<7 ضعیف 7<نمره =<14 متوسط 14<نمره =<20 خوب پیام های مقابل آنها را چاپ نماید . Sub NOMREH() Dim NOM As Single NOM = InputBox(" نمره را وارد کنید") If NOM >= 0 And NOM <= 7 Then MsgBox "BAD" If NOM > 7 And NOM <= 14 Then MsgBox " NOT BAD" If NOM > 14 And NOM <= 20 Then MsgBox "GOOD" End Sub به این نکته توجه داشته باشید که اگر فرامین IF فقط یک دستور باشند دیگر نیازی به END IF نیست البته دستور مورد نظر را باید در پشت سر THEN نوشت . |+| نوشته شده توسط علی توضیح در سه شنبه نوزدهم تیر 1386 و ساعت 9:53 |
راهنمای استفاده از دستور شرطی IF
If...Then...Else Statement*برگرفته از راهنمای اکسل* Conditionally executes a group of statements, depending on the value of an expression. Syntax If condition Then [statements] [Else elsestatements] Or, you can use the block form syntax: If condition Then [ElseIf condition-n Then [Else End If The If...Then...Else statement syntax has these parts:
Remarks You can use the single-line form (first syntax) for short, simple tests. However, the block form (second syntax) provides more structure and flexibility than the single-line form and is usually easier to read, maintain, and debug. Note With the single-line form, it is possible to have multiple statements executed as the result of an If...Then decision. All statements must be on the same line and separated by colons, as in the following statement:
A block form If statement must be the first statement on a line. The Else, ElseIf, and End If parts of the statement can have only a line number or line label preceding them. The block If must end with an End If statement. To determine whether or not a statement is a block If, examine what follows the Then keyword. If anything other than a comment appears after Then on the same line, the statement is treated as a single-line If statement. The Else and ElseIf clauses are both optional. You can have as many ElseIf clauses as you want in a block If, but none can appear after an Else clause. Block If statements can be nested; that is, contained within one another. When executing a block If (second syntax), condition is tested. If condition is True, the statements following Then are executed. If condition is False, each ElseIf condition (if any) is evaluated in turn. When a True condition is found, the statements immediately following the associated Then are executed. If none of the ElseIf conditions are True (or if there are no ElseIf clauses), the statements following Else are executed. After executing the statements following Then or Else, execution continues with the statement following End If. Tip Select Case may be more useful when evaluating a single expression that has several possible actions. However, the TypeOf objectname Is objecttype clause can't be used with the Select Case statement. Note TypeOf cannot be used with hard data types such as Long, Integer, and so forth other than Object. |+| نوشته شده توسط علی توضیح در سه شنبه نوزدهم تیر 1386 و ساعت 9:41 |
شرط ها و ساختار های تصمیم گیری در وی بی ای IF IN VBA
یکی از مهمترین بخش های هر زبان برنامه نویسی ساختار های تصمیمگیری در آنهاست .
IF یکی از پرکاربرد ترین دستورات VBA می باشد ، ساختار آن عبارت است از : IF شرط THEN عملیات مورد نظر END IF مثال : می خواهیم ساختار شرطی ایجاد کنیم که اگر محتویات سلول A1 از عدد 10 کوچکتر بود یک پیام مردودی نمایش دهد . ( فقط ساختار IF را نمایش می دهیم ) IF RANGE("A1")<10 THEN MSGBOX" مردود" END IF |+| نوشته شده توسط علی توضیح در سه شنبه نوزدهم تیر 1386 و ساعت 9:30 |
تمرین 2
تمرین 2 - ماکرویی طراحی کنید که نام و نام خانوادگی را از کاربر دریافت کرده سپس آنها را در کنار یکدیگر نمایش دهد .
SUB NAM() DIM N AS STRING DIM F AS STRING N= INPUTBOX("ENTER NAME :") F=INPUTBOX("ENTER FAMILY :") MSGBOX N&" "&F END SUB |+| نوشته شده توسط علی توضیح در سه شنبه نوزدهم تیر 1386 و ساعت 9:15 |
تمرین
تمرین : ماکرویی بنویسید که دو عدد را از کاربر گرفته و سپس ضرب آنها را نمایش دهد :
SUB ZARB() DIM I AS SINGLE DIM J AS SINGLE DIM K AS SINGLE I= INPUTBOX(" ENTER I :") J= INPUTBOX(" ENTER J :") K=I*J MSGBOX " I*J = " &K END SUB |+| نوشته شده توسط علی توضیح در سه شنبه نوزدهم تیر 1386 و ساعت 9:9 |
معرفی متغیر ها در وی بی ای
برای استفاده از متغیر ها در وی بی ای VBA بهتر است که آنها را تعریف کنیم ، دو نوع متغیر عددی و غیر عددی وجود دارد که عددی ها عبارتند از :
و غیر عددی عا عبارتند از:
روش معرفی متغیر ها استفاده از کلمه ی کلیدی DIM بعد از نام ماکروست . به مثال زیر توجه کنید: I به عنوان یک عدد صحیح ( متغیر) معرفی شده است . SUB ALI() DIM I AS INTEGER ' I به عنوان یک عدد صحیح معرفی I = INPUTBOX (" ENTER A NUMBER INTEGER:") END SUB
Data Type Summary
The following table shows the supported data types, including storage sizes and ranges.
Note Arrays of any data type require 20 bytes of memory plus 4 bytes for each array dimension plus the number of bytes occupied by the data itself. The memory occupied by the data can be calculated by multiplying the number of data elements by the size of each element. For example, the data in a single-dimension array consisting of 4 Integer data elements of 2 bytes each occupies 8 bytes. The 8 bytes required for the data plus the 24 bytes of overhead brings the total memory requirement for the array to 32 bytes. A Variant containing an array requires 12 bytes more than the array alone. Note Use the StrConv function to convert one type of string data to another.
|+| نوشته شده توسط علی توضیح در سه شنبه پنجم تیر 1386 و ساعت 13:16 |
INPUTBOX جعبه دریافت داده
هر گاه کاربر قصد دریافت داده ها را از کاربرگ نداشته باشد و بخواهد آنها را مستقیما دریافت کند از این ابزار استفاده می کند :
Sub ALI() در مثال فوق ماکرو ساده ای را مشاهده می کنید که پیام " عدد مورد نظر را وارد کنید " را نمایش داده و عدد یا متن کاربر را دریافت کرده و در متغییر I می ریزد . شکل این تابع به صورت زیر است : InputBox Function
Displays a prompt in a dialog box, waits for the user to input text or click a button, and returns a String containing the contents of the text box. Syntax InputBox(prompt[, title] [, default] [, xpos] [, ypos] [, helpfile, context]) The InputBox function syntax has these named arguments:
Remarks When both helpfile and context are provided, the user can press F1 (Windows) or HELP (Macintosh) to view the Help topic corresponding to the context. Some host applications, for example, Microsoft Excel, also automatically add a Help button to the dialog box. If the user clicks OK or presses ENTER , the InputBox function returns whatever is in the text box. If the user clicks Cancel, the function returns a zero-length string (""). Note To specify more than the first named argument, you must use InputBox in an expression. To omit some positional arguments, you must include the corresponding comma delimiter.
مثال :
Sub proInput() J = InputBox("For what year do you need this report?") End Sub
|+| نوشته شده توسط علی توضیح در سه شنبه پنجم تیر 1386 و ساعت 10:3 |
دانلود تمرین وی بی for & if
برای دانلود ابتدا تمرین را دانلود کرده و سپس سعی کنید آنرا بدون ااستفاده از راهنما حل کنید: صورت مسله : ماکرویی بنویسید که اعداد ستون اول را در در ستون دوم جستجو کرده و تکراری های آنرا یافته با رنگ سرخ و پررنگ نمایش دهد .
|+| نوشته شده توسط علی توضیح در دوشنبه چهارم تیر 1386 و ساعت 14:6 |
معرفی برخی از اشیا و خصوصیات آنها
برای ایجاد محیطی که بتوان ماکرو را در آن نوشت ابتدا باید وارد محیط vbe شد سپس از منوی insert گزینه module را انتخاب می کنیم تا محیط کد نویسی فعال شود . ماکرو ها ، ماژول ها را می سازند و ماژول ها ، پروژه ها را . در حقیقت پروژه از تعدادی شی و ماژول تشکیل شده است .
اشیا یی مانند range دارای تعدای خصوصیت به شرح زیر می باشند :
تمرین 1 - ماکرویی بنویسید که اندازه فونت محتویات سلول d3 را به 25 و حالت پررنگ تغییر دهد و نوع فونت را به titr . sub ali23() range("d3").font.name ="titr" range("d3").font.size = 25 range("d3").font.bold = true end sub |+| نوشته شده توسط علی توضیح در شنبه پنجم خرداد 1386 و ساعت 14:58 |
نوشتن چند ماکرو ساده
برای تسلط به VBA یا همان زبان برنامه نویسی آفیس ، چند تمرین ساده را مرور می کنیم و بعد به سراغ معرفی اشیاء درون وی بی ای خواهیم رفت تا برخی از خصوصیات و متد های آنها را معرفی کنیم .
تمرین 1 - ماکروییی بنام EDITB1 بنویسید که محتویات سلول A1 را در درون سلول B1 قرار دهد . SUB EDITB1() RANGE("B1") = range("a1") END SUB تمرین 2- ماکرویی بنویسید که عدد 14 را درون c1 و عدد ۱۴- را درون c2 قرار دهد . SUB ali22() RANGE("c1") = 14 RANGE("c2") = -14 END SUB
|+| نوشته شده توسط علی توضیح در شنبه پنجم خرداد 1386 و ساعت 12:0 |
ماکرو نویسی استفاده از زبان وی بی ای VBA
بنام خدا
ماکرو نویسی در اکسل VBA برای انجام عملیات تکراری و جستجو ی داده های مورد نظر می توان از ابزار قدرتمند ماکروها در اکسل استفاده کرد. ورود به ساختار برنامه نویسی ویژال بیسیک در اکسل که با عنوان VBA یا VISUAL BASIC FOR APPLICATION در اکسل و یا آفیس از آن یاد می گردد ، از مسیر زیر انجام می گیرد : TOOLS | MACRO | VISAUL BASIC EDITOR در حقیقت ماکرو ها، همان کدهایی هستد که توسط کاربر یا ماشین تولید می شوند. اگر شما یک ماکرو را با استفاده از ابزار ماکرو سازی طراحی و اجرا کنید آنرا توسط ماشین ساخته اید ولی اگر بخواهید انعطاف بیشتری به آن بدهید باید آنرا بنویسید( کد نویسی ). زبان وب بی ای در حقیقت معماری درونی اکسل و ابزاری قدرتمند برای نوشتن برنامه های پیشرفته و حلقوی است . این زبان که یک زبان شئ گراست ، اجزای درونی خود را به شکل اشیائی در نظر می گیرد که نرم افزار اکسل را تشکیل می دهند، مثل فایل ( کارپوشه WORKBOOK ) ، کاربرگ یا WORKSHEET و یا سلول RANGE .در حقیقت کارپوشه ها از اشیاء کاربرگ تشکیل شده اند و کاربرگ ها با اشیاء سلول کامل می شوند . هر شیء دارای یک سری خاصیت است . مثلا شما یک سنگ را در نظر بگیرید ، رنگ ، وزن ، شکل و... خواص سنگ محسوب می شوند .در وی بی ای VBA نیز همینطور است ، مثلا یک سلول دارای خواصی مثل محتویات ، اندازه فونت ، نام فونت ، رنگ ، فرمول ، کادر و .... می باشد. کاربران در برنامه نویسی در حقیقت این خواص را تغییر می دهند . بیایید یک تمرین را باهم انجام دهیم : ابتدا نوار ابزار ویژال بیسیک را فعال کنید ، سپس ماکرویی را طراحی کنید که در سلول A1 از کاربرگ 2 وارد شود . مراحل ساخت ماکرو : ابتدا کلید RECORD MACRO را می فشاریم و سپس به کاربرگ 2 و سلول A1 وارد می شویم و در آخر کلید STOP را می فشاریم . حال برای دیدن کد ماکرو مسیر زیر را دنبال کنید : کلید RUN را فشرده تا اسامی ماکرو ها ظاهر شود سپس ماکروی مورد نظر را انتخاب کرده کلید EDIT را می فشاریم تا متن ماکرو ( کد ) نمایش داده شود .
همانطور که مشاهده می کنید ماکرو با SUB و نام ماکرو ،شروع و با END SUB تمام می شود و در بین آنها عبارات برنامه نویسی نوشته شده است . سه رنگ در بدنه ی ماکرو بکار رفته 1- سبز: که معرف توضیحات برنامه است و هیچ تاثیری بر عملکرد ماکرو ندارد 2- آبی : کلمات کلیدی 3- سیاه : دستورات
Sub Macro1() ' Macro1 Macro ' Macro recorded 2007/04/23 by tozih Sheets("Sheet2").Select Range("A1").Select End Sub
همانطور که از کد ها مشخص است ماکرویی بنام MACRO1 به کاربرگ 2 رفته و سلول A1 را در آن انتخاب می کند . در ساختار برنامه نویسی VBA تغییر خواص به صورت توارثی انجام می پذیرد ، یعنی هر خاصیت باید به شئ مورد نظر، با یک نقطه متصل باشد . Range("A1").Select در حقیقت برای تغییر خاصیت اشیاء باید ابتدا نام شئ را ذکر کرده سپس نقطه را قرار داده و آنگاه خاصیت مورد نظر را ذکر کنیم و مقادیر آنرا تغییر دهیم . مثلا : RANGE("A2:A10").FONT.SIZE = 16 اندازه فونت محتویات سلول های A1 تا A10 را به 16 تغییر می دهد . مثال دیگر ، محتویات سلول D2 از کاربرگ 3 را عبارت ALI TOZIH قرار دهید . SHEETS("SHEET3").RANGE("D5").VALUE = "ALI TOZIH" در ضمن خاصیت VALUE پیش فرض است و می توان آنرا حذف کرد : SHEETS("SHEET3").RANGE("D5") = "ALI TOZIH" |+| نوشته شده توسط علی توضیح در دوشنبه سوم اردیبهشت 1386 و ساعت 12:11 |
|
درباره وبلاگ
![]() بنام خدا
این وبلاگ آموزشی سعی دارد با ایجاد یک کلاس آموزشی مجازی و تعاملی در حد امکان به نیاز های روزمره کاربران نرم افزار صفحه گسترده اکسل اعم از شناخت محیط ،قالب بندی ها ،ترسیم جداول ، رنگها ، شرطها ، محاسبات ، فرمول نویسی ، استفاده از توابع ، نمودار ها ، چاپ ، تحلیل داده ها توابع آرایه ای فیلتر سازی و جداول محوری و ماکرو نوسی ... منوی اصلی
صفحه نخستپست الكترونيك آرشيو مطالب خانگي سازی ذخيره كردن صفحه اضافه به علاقه منديها نوشته های پیشین
آبان 1388اسفند 1387 دی 1387 آذر 1387 مهر 1387 تیر 1387 اردیبهشت 1387 فروردین 1387 اسفند 1386 بهمن 1386 شهریور 1386 مرداد 1386 تیر 1386 خرداد 1386 اردیبهشت 1386 فروردین 1386 اسفند 1385 بهمن 1385 شهریور 1385 مرداد 1385 تیر 1385 خرداد 1385 اردیبهشت 1385 فروردین 1385 اسفند 1384 بهمن 1384 دی 1384 آذر 1384 آرشيو موضوعی
توابعنمودارها آشنایی با محیط اکسل جداول محوری توابع گزارش گیری فرمول ها و توابع آرایه ای مطالب گوناگون فرم سازی آمار VBA معتبر سازي داده ها VALIDATION ابزارهاي اكسل پيوندها
آمار 80 آموزش مقدماتی اکسل ماکس ایران آموزش گام به گام اکسل آموزش اکسل 2000 آموزش تصویری اکسل تکنولوژی های آموزشی سایت های آموزش کامپیوتر معرفی کتب کامپیوتر آموزش icdl قوه قضاییه آموزش منوهای اکسل یک وبلاگ بسیار زیبا پژوهش های آماری تاریخ شمسی با اکسل ترفند های ویندوز - وبلاگی زیبا پایگاه کتب الکترونیکی تخصصی آموزش طراحی صفحات وب سایت cpearson contextures EXCEL HOME PAGE آموزش spss یک وبلاگ جالب نكات آفيس آموزش جامع حسابداري ( جالب) قالب های حرفه ای وبلاگ ابزار وب فارسی امکانات
|
| Powered By Blogfa - Designing & Supporting Tools By WebGozar |