نحوه راه اندازی گوشی های هوشمند و رایانه های شخصی. پرتال اطلاعاتی

ماکرو در زبان اصلی ویژوال Akros در اکسل برای مبتدیان

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

VBA چیست

برنامه نویسی در اکسل با استفاده از زبان برنامه نویسی Visual Basic for Application انجام می شود که در اصل در معروف ترین پردازنده صفحه گسترده مایکروسافت ساخته شده است.

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

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

اشیاء، مجموعه ها، ویژگی ها و روش ها

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

اصلی ترین برنامه Application است که مربوط به خود برنامه Excel است. سپس Workbook ها، Worksheets و همچنین Range می آیند. به عنوان مثال، برای دسترسی به سلول A1 در یک کاربرگ خاص، باید مسیری را مشخص کنید که سلسله مراتب را در نظر بگیرد.

در مورد مفهوم "مجموعه"، این گروهی از اشیاء از همان کلاس است که در رکورد دارای شکل ChartObjects است. عناصر منفرد آن نیز اشیا هستند.

مفهوم بعدی خواص است. آنها ویژگی ضروری هر شی هستند. مثلاً برای Range مقدار یا Formula است.

متدها دستوراتی هستند که نشان می دهند چه کاری باید انجام شود. هنگام نوشتن کد در VBA، آنها باید با یک نقطه از شی جدا شوند. به عنوان مثال، همانطور که بعدا نشان داده خواهد شد، اغلب هنگام برنامه نویسی در اکسل، از دستور Cells(1,1).Select استفاده می شود. این بدان معنی است که شما باید یک سلول با مختصات را انتخاب کنید

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

چگونه شروع کنیم

سپس باید به برنامه VB بروید که برای آن کافی است از کلیدهای ترکیبی "Alt" و "F11" استفاده کنید. به علاوه:

  • در نوار منو واقع در بالای پنجره، روی نماد کنار نماد اکسل کلیک کنید.
  • دستور Mudule را انتخاب کنید.
  • با کلیک بر روی نماد همراه با تصویر ذخیره کنید.
  • یک طرح از کد بنویسید.

به نظر می رسد این است:

زیربرنامه()

"کد ما

توجه داشته باشید که خط "کد ما" با رنگ دیگری (سبز) هایلایت می شود که دلیل آن آپستروف ابتدای خط است که نشان می دهد یک نظر دنبال می شود.

اکنون می توانید هر کدی را بنویسید و ابزار جدیدی برای خود در VBA Excel ایجاد کنید (نمونه های برنامه را در زیر ببینید). البته برای کسانی که با اصول اولیه ویژوال بیسیک آشنا هستند، کار بسیار راحت تر خواهد بود. با این حال، حتی کسانی که آنها را ندارند، در صورت تمایل، می توانند به سرعت به راحتی راحت شوند.

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

این نام برنامه های نوشته شده به زبان Visual Basic for Application را پنهان می کند. بنابراین برنامه نویسی در اکسل ایجاد ماکروها با کد مورد نظر است. با این قابلیت، صفحه گسترده مایکروسافت خود تکامل یافته و با نیازهای یک کاربر خاص سازگار است. اکنون که نحوه ایجاد ماژول‌ها برای نوشتن ماکروها را فهمیدید، می‌توانید نمونه‌های خاصی از برنامه‌های VBA Excel را بررسی کنید. بهتر است با ابتدایی ترین کدها شروع کنید.

مثال 1

وظیفه: برنامه ای بنویسید که مقدار محتویات یک سلول را کپی کرده و سپس در سلول دیگر بنویسد.

برای این:

  • برگه "View" را باز کنید؛
  • به نماد "Macros" بروید؛
  • روی "ضبط ماکرو" کلیک کنید؛
  • فرم باز را پر کنید

برای سادگی، "Macro1" را در قسمت "Macro Name" رها کنید و به عنوان مثال، hh را در قسمت "Keyboard Shortcut" وارد کنید (این بدان معنی است که می توانید برنامه را با دستور blitz "Ctrl + h" اجرا کنید). Enter را فشار دهید.

اکنون که ضبط ماکرو از قبل شروع شده است، محتویات یک سلول در سلول دیگر کپی می شود. به نماد اصلی برگردید. روی "Record macro" کلیک کنید. این عمل نشان دهنده پایان برنامه است.

  • دوباره به خط "Macros" بروید.
  • "Macro 1" را از لیست انتخاب کنید.
  • روی "Run" کلیک کنید (همان عمل با شروع میانبر صفحه کلید "Ctrl + hh" آغاز می شود).

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

منطقی است که ببینید کد چگونه به نظر می رسد. برای انجام این کار، به خط "Macros" برگردید و روی "Edit" یا "Enter" کلیک کنید. در نتیجه، آنها خود را در یک محیط VBA می بینند. در واقع، خود کد ماکرو بین خطوط Sub Macro1() و End Sub قرار دارد.

اگر کپی کردن، به عنوان مثال، از سلول A1 به سلول C1 انجام شده باشد، یکی از خطوط کد شبیه محدوده ("C1") خواهد بود. انتخاب کنید. در ترجمه، مانند "Range("C1").Select به نظر می رسد، به عبارت دیگر، به VBA Excel، به سلول C1 می پرد.

دستور ActiveSheet.Paste قسمت فعال کد را تکمیل می کند. یعنی نوشتن محتویات سلول انتخاب شده (در این مورد A1) در سلول انتخاب شده C1.

مثال 2

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

حلقه های VBA به شما در ایجاد ماکروهای مختلف کمک می کند. فرض کنید یک تابع y=x + x 2 + 3x 3 - cos(x) وجود دارد. شما باید یک ماکرو ایجاد کنید تا برنامه آن را دریافت کنید. این کار فقط با استفاده از حلقه های VBA قابل انجام است.

x1=0 و x2=10 را برای مقادیر اولیه و نهایی آرگومان تابع در نظر بگیرید. علاوه بر این، باید یک ثابت وارد کنید - مقدار مرحله تغییر آرگومان و مقدار اولیه برای شمارنده.

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

زیربرنامه()

مرحله = 0.1

انجام while x1< x2 (цикл будет выполняться пока верно выражение x1 < x2)

y=x1 + x1^2 + 3*x1^3 - Cos(x1)

سلول ها (i، 1). مقدار = x1 (مقدار x1 با مختصات (i،1) روی سلول نوشته می شود)

سلول ها (i، 2). مقدار = y (مقدار y با مختصات (i،2) روی سلول نوشته می شود)

i = i + 1 (کنترل فعال)؛

x1 = x1 + shag (آگومان با مقدار step تغییر می کند).

انتهای زیر

در نتیجه اجرای این ماکرو در اکسل، دو ستون دریافت می کنیم که ستون اول حاوی مقادیر x و ستون دوم برای y است.

سپس، یک نمودار بر روی آنها ساخته می شود که برای اکسل استاندارد است.

مثال 3

برای پیاده‌سازی حلقه‌ها در VBA Excel 2010، مانند سایر نسخه‌ها، همراه با ساختار Do while از قبل، از For استفاده می‌شود.

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

همانطور که در بالا توضیح داده شد ابتدا باید یک ماکرو ایجاد کنید. بعد، خود کد را می نویسیم. ما معتقدیم که به مقادیر 10 سلول علاقه مندیم. کد شبیه این است.

برای i = 1 تا 10 بعد

این دستور به زبان "انسانی" به صورت "تکرار از 1 تا 10 با افزایش یک" ترجمه می شود.

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

برای i = 1 تا 10 مرحله 1 بعد.

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

نتایج به دست آمده باید در سلول هایی با عدد (i،1) ذخیره شود. سپس، هر بار که حلقه شروع می شود، با افزایش i در مقدار step، تعداد ردیف نیز به طور خودکار افزایش می یابد. بنابراین، کد بهینه خواهد شد.

به طور کلی، کد به صورت زیر خواهد بود:

زیربرنامه()

برای i = 1 به 10 مرحله 1 (شما می توانید به سادگی برای i = 1 تا 10 بنویسید)

سلول ها (i، 1). مقدار = i ^ 2

بعد (به یک معنا، به عنوان یک شمارنده عمل می کند و به معنای یک شروع دیگر از حلقه است)

انتهای زیر

اگر همه چیز به درستی انجام شود، از جمله ضبط و اجرای ماکرو (دستورالعمل های بالا را ببینید)، پس هر بار که فراخوانی می شود، ستونی با اندازه مشخص شده به دست می آید (در این مورد، شامل 10 سلول).

مثال 4

در زندگی روزمره، اغلب نیاز به تصمیم گیری بسته به شرایطی وجود دارد. در VBA Excel نمی توانید بدون آنها کار کنید. نمونه‌هایی از برنامه‌هایی که مسیر بعدی الگوریتم انتخاب می‌شود، و در ابتدا از پیش تعیین نشده است، اغلب از ساختن If…Then (برای موارد پیچیده) استفاده می‌کنند.

بیایید یک مورد خاص را در نظر بگیریم. فرض کنید باید یک ماکرو برای "اکسل" ایجاد کنید تا سلول با مختصات (1،1) نوشته شود:

1 اگر استدلال مثبت باشد.

0 اگر آرگومان صفر باشد.

-1 اگر استدلال منفی باشد.

ایجاد چنین ماکرویی برای "اکسل" به روش استاندارد و از طریق استفاده از کلیدهای "هات" Alt و F11 آغاز می شود. کد زیر در ادامه نوشته شده است:

زیربرنامه()

x= Cells(1, 1).Value (این دستور x مقدار محتویات سلول را در مختصات (1، 1) اختصاص می دهد)

اگر x> 0 باشد، سلول ها (1، 1). مقدار = 1

اگر x=0 سپس سلول ها (1، 1). مقدار = 0

اگر x<0 Then Cells(1, 1).Value = -1

انتهای زیر

باقی مانده است که ماکرو را اجرا کنید و مقدار مورد نظر را برای آرگومان در اکسل بدست آورید.

توابع VBA

همانطور که متوجه شده اید، برنامه نویسی در معروف ترین صفحه گسترده مایکروسافت چندان دشوار نیست. به خصوص اگر یاد بگیرید که چگونه از توابع VBA استفاده کنید. در مجموع، این زبان برنامه نویسی که به طور خاص برای نوشتن برنامه های کاربردی در Excel و Word ایجاد شده است، حدود 160 عملکرد دارد. آنها را می توان به چند گروه بزرگ تقسیم کرد. این:

  • توابع ریاضی با اعمال آنها در استدلال، مقدار کسینوس، لگاریتم طبیعی، قسمت صحیح و غیره را دریافت می کنند.
  • توابع مالی به لطف حضور آنها و استفاده از برنامه نویسی در اکسل می توانید ابزارهای موثری برای حسابداری و محاسبات مالی بدست آورید.
  • توابع پردازش آرایه اینها عبارتند از Array، IsArray. lBound; UBound.
  • توابع VBA Excel برای ردیف. این یک گروه نسبتاً بزرگ است. برای مثال شامل توابع Space برای ایجاد رشته ای با تعداد فاصله های برابر با یک آرگومان صحیح یا Asc برای تبدیل کاراکترها به کد ANSI است. همه آنها به طور گسترده استفاده می شوند و به شما امکان می دهند با ردیف ها در اکسل کار کنید و برنامه هایی ایجاد کنید که کار با این جداول را بسیار آسان تر می کند.
  • توابع تبدیل نوع داده برای مثال، CVar مقدار آرگومان Expression را با تبدیل آن به نوع داده Variant برمی‌گرداند.
  • توابع کار با تاریخ بنابراین، تابع WeekdayName نام (کامل یا جزئی) روز هفته را با تعداد آن برمی گرداند. حتی مفیدتر تایمر است. تعداد ثانیه هایی را که از نیمه شب تا یک نقطه خاص در روز سپری شده است را نشان می دهد.
  • توابعی برای تبدیل یک آرگومان عددی به سیستم های اعداد مختلف. به عنوان مثال، Oct نمایش هشتگانه یک عدد را می دهد.
  • توابع قالب بندی مهمترین آنها Format است. مقداری از نوع Variant را با یک عبارت فرمت شده بر اساس دستورالعمل های داده شده در اعلان فرمت برمی گرداند.
  • و غیره.

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

مثال 5

بیایید سعی کنیم به سمت حل مشکلات پیچیده تر حرکت کنیم. برای مثال:

یک سند کاغذی از گزارش سطح واقعی هزینه های شرکت ارائه شده است. ضروری:

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

بیایید یکی از راه حل ها را در نظر بگیریم.

یک قالب ایجاد کنید

تمام اقدامات بر روی یک برگه استاندارد در اکسل انجام می شود. سلول های رایگان برای وارد کردن داده ها در مورد نام شرکت مصرف کننده، میزان هزینه ها، سطح آنها و گردش مالی رزرو شده است. از آنجایی که تعداد شرکت‌ها (انجمن‌هایی) که گزارش برای آنها تنظیم می‌شود ثابت نیست، سلول‌های وارد کردن مقادیر بر اساس نتایج و نام کامل متخصص از قبل رزرو نمی‌شوند. کاربرگ یک نام جدید داده شده است. به عنوان مثال، "Otchet".

متغیرها

برای نوشتن برنامه ای برای پر کردن خودکار یک الگو، باید نماد را انتخاب کنید. آنها برای متغیرها استفاده خواهند شد:

  • NN - شماره ردیف فعلی جدول.
  • TP و TF - گردش مالی برنامه ریزی شده و واقعی؛
  • SF و SP - مقدار واقعی و برنامه ریزی شده هزینه ها.
  • IP و IF - سطح برنامه ریزی شده و واقعی هزینه ها.

بیایید با همان حروف مشخص کنیم، اما با "پیشوند" جمع Itog کل در ستون داده شده. به عنوان مثال، ItogTP به ستون جدولی با عنوان "گردش برنامه ریزی شده" اشاره دارد.

حل مسئله با استفاده از برنامه نویسی VBA

با استفاده از نماد معرفی شده، فرمول هایی برای انحرافات به دست می آوریم. در صورت نیاز به انجام محاسبه در٪، (F - P) / P * 100، و به مقدار - (F - P) داریم.

نتایج این محاسبات را می توان به بهترین وجه بلافاصله در سلول های مناسب صفحه گسترده اکسل وارد کرد.

برای مجموع واقعی و پیش بینی شده، با استفاده از فرمول های ItogP=ItogP + P و ItogF=ItogF+ F به دست می آید.

برای انحرافات، اگر محاسبه به صورت درصد انجام شود، از = (ItogF - ItogP) / ItogP * 100 استفاده کنید، و در مورد مقدار کل - (ItogF - ItogP).

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

قبل از اجرای برنامه ایجاد شده، باید کتاب کار را به عنوان مثال با نام "Report1.xls" ذخیره کنید.

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

اکنون می دانید که چگونه با استفاده از ماکروها مشکلات اکسل را حل کنید. توانایی استفاده از vba excel (نمونه هایی از برنامه های بالا را ببینید) همچنین ممکن است برای کار در محیط محبوب ترین ویرایشگر متن "Word" در حال حاضر مورد نیاز باشد. به طور خاص، می توانید دکمه های منو را همانطور که در ابتدای مقاله نشان داده شده است، با نوشتن، یا با نوشتن کد ایجاد کنید، که به لطف آن می توان بسیاری از عملیات روی متن را با فشار دادن کلیدهای در حال کار یا از طریق زبانه "View" انجام داد. و نماد "ماکروها".

برای کسانی که هرگز برنامه نویسی نکرده اند اغلب دشوار است که فوراً نمونه هایی از برنامه ها را بخوانند، ابتدا باید اصول اولیه را درک کنید، کلماتی را که برنامه نویسان بر روی آنها کار می کنند را یاد بگیرید. این صفحه به طور ویژه برای افراد مبتدی ایجاد شده است.

بنابراین ماکروها چیست و چگونه آنها را می نویسید؟

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

ماکروها در VBA - Visual Basic for Applications نوشته می شوند. این مخفف باید در هنگام جستجوی اطلاعات مورد نیاز به خاطر سپرده شود و در جستارهای جستجو استفاده شود. VBA یک زبان شی گرا و سلسله مراتبی است. این بدان معنی است که شما باید اشیایی را که تابع یکدیگر هستند مدیریت کنید. به عنوان مثال، کتاب کار اکسل یک شی است. ورق دارد، ورق سلول دارد. برگه ها، سلول ها، محدوده ها و موارد دیگر اشیا هستند. تبعیت را می توان تقریباً با تودرتو برابر دانست - به عنوان مثال، یک سلول در یک صفحه تودرتو شده است و یک صفحه در یک کتاب تودرتو شده است.

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

اشیا دارای خاصیت هستند. به عنوان مثال، یک صفحه می تواند قابل مشاهده یا پنهان، فعال یا غیرفعال باشد. یک سلول دارای ویژگی های بسیاری است که برای همه نیز شناخته شده است: پر کردن، حاشیه ها، رنگ و اندازه متن، تراز. خواص، البته، قابل تغییر است.

بنابراین، اشیاء در یکدیگر "جاسازی" شده اند و ویژگی های متفاوتی دارند. بیایید آنها را بهتر بشناسیم.

ما کل لیست را در اینجا ارائه نمی دهیم، زیرا بسیار بزرگ است. ما حتی در مرحله اول خود را به آنچه لازم است محدود خواهیم کرد.

اشیاء:

کتاب کار - کتاب کار اکسل.

ورق - ورق.

محدوده - محدوده.

سلول - سلول.

ردیف - یک رشته.

ستون - ستون.

اعمال با اشیا

فعال - فعال کنید، یعنی "مکان نما" را قرار دهید. می توانید کتاب، برگه، سلول را فعال کنید.

انتخاب کنید - برجسته کنید. می توانید یک یا چند ردیف، یک یا چند ستون، یک محدوده یا یک سلول را انتخاب کنید.

حذف - حذف. همچنین می‌توانید ردیف‌ها و ستون‌ها، محدوده سلول‌ها یا یک سلول، صفحه را حذف کنید.

کپی - کپی.

و به طور جداگانه یک اقدام Paste - Paste وجود دارد. اگر پشت تمام اقدامات قبلی کلمه "چی؟" (چه چیزی را فعال کنیم، چه چیزی را کپی کنیم)، سپس کلمه paste با سوال "کجا؟" آمده است. بنابراین، هنگام نوشتن یک برنامه، باید مشخص کنید که چه چیزی را وارد کنید، بلکه در کجا قرار دهید.

علاوه بر اجرای برنامه ها، اکسل می تواند در مورد دستورات داده شده «اطلاعات بدهد». در اینجا چند نمونه از این دستورات آورده شده است:

Sheets.Count - تعداد برگه‌های کتاب را برمی‌گرداند.

تاریخ - تاریخ امروز را به صورت رشته ای برمی گرداند.

Len ("رشته") طول رشته را بر حسب تعداد کاراکتر برمی گرداند. در این مثال طول 6 است.

حال باید چند کلمه در مورد انواع داده ها (متغیرها) بگوییم.

برای شروع، دانستن یک چیز کافی است: داده ها می توانند اعداد باشند، اما می توانند رشته ها، یعنی متن باشند. با اعداد، می توانید برخی از اقدامات (افزودن و غیره) را با رشته ها انجام دهید - برخی دیگر (به عنوان مثال، اولین کاراکتر را تشخیص دهید).

تمام مقادیر رشته در VBA در علامت نقل قول نوشته می شود. همه عناوین / نام کتاب ها یا برگه ها متن هستند، یعنی یک مقدار رشته، بنابراین آنها باید همیشه در گیومه قرار بگیرند.

هم اعداد و هم رشته ها را می توان به متغیرها نسبت داد.

برای مثال:

S = "سلام"

شما می توانید مقادیر متغیرها را نادیده بگیرید، به عنوان مثال، به صورت زیر:

I=i+10

S=s & "صلح!"

بعد از آن i=11 و s="سلام دنیا!".

در اینجا با اولین عملیات روی مقادیر رشته روبرو هستیم. علامت & به این معنی است که دو خط باید به هم متصل شوند. ترتیب مهم است: اگر بنویسید

s="، دنیا!" & s، ما s="، جهان! سلام".

از آنجایی که متغیر s از قبل حاوی نقل قول است، لازم نیست هنگام استفاده از آن، آن را در گیومه قرار دهید. برعکس، عدم وجود نقل قول است که به اکسل می گوید که باید به عنوان یک متغیر در نظر گرفته شود، نه به عنوان متن. یعنی رکوردها:

S="سلام دنیا!"

H="سلام دنیا!"

همان نتیجه را خواهد داد - به متغیر h مقدار "Hello, world!"

اما رکورد

S="سلام دنیا!"

H="s"

مقدار "s" را به متغیر h اختصاص می دهد.

باید بگویم که اشیاء در اکسل گاهی به صورت مفرد و گاهی به صورت جمع نوشته می شوند. چگونه به یاد بیاوریم که در چه موردی از چه چیزی استفاده می شود؟ می توانید از قانون زیر استفاده کنید: هر چیزی که در اکسل زیاد است به صورت جمع نوشته می شود، هر چیزی که در یک نسخه وجود دارد به صورت تکی است. اکسل دارای تعداد زیادی کتاب، تعداد زیادی برگه و تعداد زیادی سلول است. همه آنها برای Excel یکسان هستند و شما فقط می توانید آنها را با نام یا مختصات تشخیص دهید. بنابراین، برنامه از جمع استفاده می کند. به عنوان مثال:

Workbooks ("Book1"). فعال کنید

Sheets ("Sheet1"). کپی کنید

ردیف (1). حذف

سلول ها با مختصات تعیین می شوند: اولی شماره ردیف، دومی ستون است.

مثلا دستور

سلول ها (1،1). فعال کنید

مکان نما را در سلول بالا سمت چپ قرار می دهد.

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

برای مثال وقتی به یک سلول یا صفحه فعال اشاره می کنیم از عدد مفرد استفاده می شود، زیرا بدیهی است که تنها یک سلول یا صفحه می تواند فعال باشد. به عنوان مثال، شماره ردیف سلول فعال را "به خاطر بسپارید".

I=ActiveCell.Row

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

مثلا دستور

سلول ها (1،1). کپی کنید

سلول سمت چپ بالای صفحه فعال را کپی می کند.

یک تیم

Sheets("Sheet1").Cells(1،1).کپی

سلول سمت چپ بالای صفحه "Sheet1" را کپی می کند، صرف نظر از اینکه این صفحه در حال حاضر فعال است یا خیر.

پس از آن، شما می توانید ماکرو بنویسید :)

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

ماکرو چیست؟ ماکرویک توالی ذخیره شده از اقدامات یا برنامه ای است که در VBA (Visual Basic for Application) ایجاد شده است. یک سوال رایج این است که چگونه یک ماکرو در اکسل بنویسیم؟ فقط

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

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

1. اجازه استفاده از ماکروها را بدهید

منو (دکمه گرد بالا سمت چپ) - گزینه های اکسل - مرکز اعتماد - گزینه های مرکز اعتماد - گزینه های ماکرو. کادر «فعال کردن همه ماکروها» را علامت بزنید.

یا همین کار را در تب Developer انجام دهید

2. منوی Developer را برای کار سریع با ماکروها فعال کنید

منو (دکمه گرد در بالا سمت چپ) - گزینه های اکسل - عمومی - نمایش تب Developer.

برای اینکه ماکرو ایجاد شده در کتاب کار ذخیره شود، باید فایل را در آن ذخیره کنید xlsm. یا xlsb.روی Save As - Macro-Enabled Excel Workbook یا Binary Workbook کلیک کنید.

بنابراین، چگونه یک ماکرو در اکسل بنویسیم؟

همه چیز ساده است. بریم سراغ اکسل. در پایین صفحه، در زیر برگه های برگه، دکمه "Record macro" وجود دارد.

دکمه را فشار دهید، پنجره "Record macro" باز می شود. در قسمت Macro Name: ماکرو را هر چه دوست داریم نام گذاری کنیم. میانبر صفحه کلید را تنظیم می کنیم که بعداً با آن تماس خواهیم گرفت (اختیاری).

روی OK کلیک کنید. ضبط ضبط ماکرو شروع شده است.

همه چیز. اکنون اقداماتی را که باید به خاطر بسپاریم با یک ماکرو انجام می دهیم. به عنوان مثال، ما باید یک ردیف را حذف کنیم و سلول A1 را به رنگ زرد رنگ کنیم.

در طی این دستکاری ها، به جای دکمه "Record macro" در زیر برگه ها، یک مربع روشن می شود که با کلیک بر روی آن ماکرو را متوقف می کنید.

چگونه اتفاقی که افتاده را اجرا کنیم؟ روی دکمه کلیک کنید، پنجره Select Macro ظاهر می شود، ماکرو مورد نظر را انتخاب کنید و سپس روی دکمه Run کلیک کنید.

چگونه ببینیم چه اتفاقی افتاده است؟ دکمه را فشار دهید. ماکرو مورد نظر را انتخاب کرده و روی ویرایش کلیک کنید. پنجره ضبط ماکرو (پنجره VBA) باز می شود

کد ماکرو باید چیزی شبیه به این باشد.

Sub Example1() " Example1 Macro Rows("2:2").انتخاب Selection.Delete Shift:=xlUp Range("A1").انتخاب با Selection.Interior .Pattern = xlSolid PatternColorIndex = xlAutomatic.Color = 65535 .TintAndShade = 0 .PatternTintAndShade = 0 پایان با پایان فرعی

" یک شخصیت نظر است، یعنی. این خط در کد شرکت نمی کند. یک ماکرو باید یک نام (Sub Example1()) و یک پایان (End Sub) داشته باشد.

می توانید نحوه ایجاد دکمه برای ماکرو را بخوانید.

بنابراین، شما می توانید هر یک از اقدامات خود را یادداشت کنید، تا بتوانید آنها را هر چند بار که دوست دارید تکرار کنید!

می‌توانید نحوه ذخیره یک ماکرو برای همه کتاب‌های رایانه خود را بخوانید.

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

نحوه اجرای یک ماکرو بر اساس شرط قابل خواندن است

موفق باشید، مطمئنم که آن را دوست خواهید داشت!

مقاله ما را در شبکه های اجتماعی خود به اشتراک بگذارید:

اشیایی مانند ماکروها در اکسل به سازماندهی صحیح فرآیند کار در اکسل کمک می کنند.

اجازه دهید تمام ویژگی های کار با این اشیاء را در بسته نرم افزاری MS Office با جزئیات بیشتری در نظر بگیریم.

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

ماکروها چیست و چرا به آنها نیاز است

شما می توانید با ماکروها در هر یک از برنامه های MS Office کار کنید. اول از همه، آنها برای سازماندهی شایسته کار کاربر در برنامه مورد نیاز هستند.

آنها برای اینکه یک نوع کارها و اقدامات را چندین ده بار انجام ندهند ضروری هستند.

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

مهم!به لطف ماکرو ایجاد شده، می توانید به سادگی کار را فوراً انجام دهید، در حالی که انجام آن به صورت دستی زمان زیادی می برد.

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

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

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

ایجاد ماکروهای خود در اکسل 2010، 2007، 2013

بیایید نمونه‌هایی از ایجاد در Excel 2007، 2013 را با جزئیات بیشتری در نظر بگیریم:


  • سندی را که با آن کار می کنید و می خواهید برای آن ماکرو ایجاد کنید باز کنید. به هر حال، هر سلولی که یک عمل روی آن انجام می شود باید کار شود.
  • تب توسعه دهنده را در نوار نمایش دهید. برای انجام این کار، آیتم منوی "File" را باز کنید و گزینه ها را باز کنید، همانطور که در شکل نشان داده شده است.

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

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

  • روی کلید کلیک کنید. یک پنجره ایجاد ظاهر می شود که در آن باید یک نام، یک میانبر صفحه کلید که با آن روشن می شود، مشخص کنید. همچنین می توانید توضیح کوتاهی از نحوه عملکرد ماکرو اضافه کنید. اگر تعداد زیادی از آنها دارید، این کار باید انجام شود تا گیج نشوید.

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

نحوه فعال کردن و کار با ماکروها در اکسل

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


  • در برگه توسعه دهنده، به دنبال دکمه ای به نام "Macros" بگردید. روی آن کلیک کنید؛

  • ماکرو مورد نیاز خود را از لیست انتخاب کنید و روی دکمه "Run" کلیک کنید.
  • همچنین می توانید ماکرو لازم را با استفاده از میانبر صفحه کلید که توسط کاربر در مرحله اولیه ایجاد آن مشخص شده است اجرا کنید.
  • پس از کلیک بر روی دکمه execute، کلیه اقداماتی که در حین ضبط انجام شده اند دوباره انجام می شوند.

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

ایجاد و حذف ماکروها

ماکروها با استفاده از یک زبان برنامه نویسی به نام ویژوال بیسیک (یا فقط مخفف VB) ایجاد می شوند.

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

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

ایجاد آنها در نسخه های زیر Word راحت تر است: 2007، 2010، 2013.

منوی ماکرو

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

اپراتورها انواع مختلفی دارند.

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

در همان زمان، تقریباً نود درصد از کل اپراتورهای ماکرو ارائه شده در برنامه، عملکرد دکمه ها و نمادهای معمولی را در نوار ابزار برنامه انجام می دهند.

به این ترتیب هر سلول کار خود را انجام خواهد داد.

ساده ترین راه برای شروع ایجاد ماکرو سفارشی خود، باز کردن ضبط کننده است.

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

ماکرو آنها را به یک زبان برنامه نویسی ترجمه می کند و تمام دستورات انجام شده توسط کاربر را به خاطر می آورد.

برای حذف یک ماکرو، دستورالعمل ها را دنبال کنید:


  1. پنجره کنترل را با استفاده از کلید "Macros" در برگه اصلی توسعه دهنده باز کنید.
  2. شی مورد نیاز خود را انتخاب کنید و روی دکمه حذف در قسمت سمت راست پنجره کلیک کنید.

مبحث 2.3. نرم افزار ارائه و برنامه نویسی پایه آفیس

مبحث 2.4. سیستم های مدیریت پایگاه داده و سیستم های خبره

2.4.11. پایگاه آموزشی با دکمه اصلی فرم "آموزش_دانشجویان" - دانلود

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

2.3. نرم افزار ارائه و برنامه نویسی پایه آفیس

2.3.7. مبانی برنامه نویسی آفیس

Visual Basic for Applications: Visual Basic for Applications (VBA)

VBA زیرمجموعه ای از زبان برنامه نویسی ویژوال بیسیک (VB) است که تقریباً تمام ابزارهای ایجاد برنامه های کاربردی VB را در بر می گیرد.

تفاوت VBA با زبان برنامه نویسی VB در این است که سیستم VBA برای کار مستقیم با اشیاء آفیس طراحی شده است و نمی توانید مستقل از برنامه های آفیس در آن پروژه ایجاد کنید. بنابراین، در VBA، زبان برنامه نویسی VB است و محیط برنامه نویسی به عنوان ویرایشگر VB پیاده سازی می شود که می تواند از هر برنامه MS Office فعال شود.

به عنوان مثال، برای باز کردن ویرایشگر VBA از برنامه PowerPoint، باید دستور Tools / Macro / VBA Editor را اجرا کنید. با انتخاب دستور Microsoft PowerPoint از منوی View یا با فشار دادن Alt + F11 می توانید از ویرایشگر به برنامه برگردید.

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

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

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

الگوریتم ایجاد توابع کاربر در VBA را در نظر بگیرید:

1. پنجره ویرایشگر کد VBA را با اجرای دستور Service / Macro / Visual Basic Editor فراخوانی کنید یا Alt+F11 را فشار دهید.

2. آیتم منوی ویرایشگر Insert / Module (Insert / Module) را اجرا کنید.

3. سپس، Insert / Procedure (Insert / Procedure) را اجرا کنید. در کادر محاوره‌ای Add Procedure که باز می‌شود، نام تابع را وارد کنید (به عنوان مثال SUMMA5) و سوئیچ‌ها را تنظیم کنید: Type (type) - روی موقعیت Function (function); Scope (Scope of Definition) - در موقعیت Public (General) و روی OK کلیک کنید.


برنج. یکی

4. یک تابع خالی در پنجره ویرایشگر برنامه نویسی VBA ظاهر می شود: عنوان آن Public Function SUM5() و انتهای آن End Function است که کد بدنه تابع باید بین آن قرار گیرد.


برنج. 2.

5. سپس لیستی از پارامترهای تابع را وارد می کنیم، به عنوان مثال، در براکت (x, y, z, i, j) نوع داده (برای محاسبات دقیق) و نوع مقدار بازگردانده شده توسط تابع ( در این مثال وارد نخواهیم شد). علاوه بر این، بدنه تابع را معرفی می کنیم، برای مثال SUM5 = x + y + z + i + j. در نتیجه، متن برنامه زیر را دریافت می کنیم:

تابع عمومی SUM5 (x، y، z، i، j)
SUM5 = x + y + z + i + j
تابع پایان

6. به پنجره برنامه اکسل برمی گردیم که مثلاً در آن باید پنج مقدار را جمع کنیم.

7. "Insert / Function" را اجرا می کنیم و در پنجره تابع ویزارد باز شده، دسته "User-defined" را انتخاب می کنیم و در پنجره "Select a function" SUM5 را انتخاب کرده و OK می کنیم.



برنج. 3.



برنج. 4.

ماکروها

ایجاد یک ماکرو

بیایید یک ماکرو ایجاد کنیم تا به طور خودکار دو عدد را در سلول های A1، B1 اضافه کنیم و نتیجه را در سلول C1 قرار دهیم و همچنین سلول C1 را به رنگ فیروزه ای پر کنیم.

الگوریتم ایجاد یک ماکرو برای کار:

1. Tools/Macro، شروع ضبط را انتخاب کنید.

2. در قسمت Macro name یک نام برای ماکرو وارد کنید. اولین کاراکتر نام ماکرو باید یک حرف باشد. فاصله در نام ماکرو مجاز نیست. زیرخط را می توان به عنوان جداکننده کلمات استفاده کرد.

3. برای اجرای ماکرو با استفاده از میانبر صفحه کلید، یک حرف را در قسمت میانبر صفحه کلید وارد کنید. می توانید از CTRL+ حرف (برای حروف کوچک) یا CTRL+SHIFT+ حرف (برای حروف بزرگ) استفاده کنید، جایی که حرف هر کلید حرفی در صفحه کلید است. میانبر صفحه کلید پیش فرض را انتخاب نکنید، زیرا میانبر صفحه کلید انتخاب شده، میانبرهای استاندارد صفحه کلید مایکروسافت اکسل را در آن زمان با این کتاب کار لغو می کند.

4. در قسمت «ذخیره»، کتاب کاری را که می خواهید ماکرو را در آن ذخیره کنید، انتخاب کنید. ماکرو را در «این کتاب» ذخیره کنید. برای ایجاد توضیح مختصری از ماکرو، متن مورد نظر را در قسمت Description وارد کنید. اسکرین شات نمونه ای از پر کردن کادر گفتگوی "Record macro" را نشان می دهد.


برنج. 5.

5. روی OK کلیک کنید.

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


برنج. 6.

7. روی دکمه Stop Recording در نوار ابزار سیستم عامل شناور (توقف ضبط) یا Tools / Macro / Stop Macro کلیک کنید.

هنگامی که یک ماکرو ضبط می شود، در لیست ماکرو به نام خود ظاهر می شود.

ویرایشگر VBA به طور خودکار دنباله ای از دستورات ماکرو یا یک برنامه را با توجه به اقدامات انجام شده ضبط می کند (شکل 7).



برنج. 7.

برای فراخوانی یک ماکرو باید دستور Service / Macro / Macros را اجرا کنید. پس از آن، در کادر محاوره ای با لیستی از ماکروها، می توانید آن را با نام پیدا کنید و روی دکمه Run کلیک کنید.

اختصاص یک دکمه نوار ابزار برای اجرای ماکرو

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

  1. از منوی Tools گزینه Settings را انتخاب کنید.
  2. در کادر محاوره‌ای Customize، زبانه Commands را انتخاب کنید و در لیست Categories گزینه Macros را انتخاب کنید و در لیست Commands گزینه Custom Button را انتخاب کنید.
  3. از فهرست دستورات، از ماوس برای کشیدن یک دکمه سفارشی روی نوار ابزار استفاده کنید.
  4. روی این دکمه راست کلیک کرده و از منوی زمینه Assign Macro را انتخاب کنید.
  5. در قسمت Macro name نامی برای ماکرو وارد کنید.

اختصاص یک ناحیه از یک شی گرافیکی برای اجرای ماکرو:

  1. یک شیء گرافیکی ایجاد کنید.
  2. برای شیء گرافیکی انتخاب شده، منوی زمینه را اعمال کنید.
  3. از منوی زمینه، Assign macro را انتخاب کنید.
  4. در کادر محاوره‌ای Assign Macro to Object که ظاهر می‌شود، یک نام برای ماکرو در قسمت Macro Name وارد کنید، سپس روی OK کلیک کنید.

ویرایش ماکرو توسط ویرایشگر VBA انجام می شود، برای این کار باید موارد زیر را انجام دهید:

  1. دستور Tools / Macro / Macros را انتخاب کنید.
  2. نام ماکرو مورد نظر برای تغییر را از لیست نام انتخاب کنید.
  3. دکمه Edit را فشار دهید، پنجره ویژوال بیسیک باز می شود که در آن می توانید دستورات ماکرو انتخاب شده را که به زبان ویژوال بیسیک نوشته شده است ویرایش کنید.


حذف ماکرو:

  1. در منوی ابزار، به Macro اشاره کنید و سپس روی Macros کلیک کنید.
  2. در لیست ماکروهای موجود در کتاب کار فعلی، ماکرویی را که می خواهید حذف کنید انتخاب کنید و روی دکمه Delete کلیک کنید.

تغییر نام یک ماکرو

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

برترین مقالات مرتبط