Макро кодове в Visual Basic. Как да напишете прост макрос в програма Excel

Статията е предназначена за хора, които искат да научат как да пишат програми на вградения в Excel Visual Basic (VBA), но абсолютно не знаят какво е то.

За начало - няколко думи за това защо е необходимо. VBA към MS Excel ни представя универсален инструмент за бързи и точни решения на всеки отделен потребителски задачи в MS Excel. Със сигурност можете да използвате функциите, на които е чудесен набор от MS Excel, но те не винаги решават задачата.
Така че, създайте например простата програма. Ще използваме MS Excel 2007. Отворете MS Excel, щракнете върху "Запазване като" и запазете файла на програмата си, като кликнете върху "Ekmel книга с макро поддръжка".


След това трябва да активирате раздела Разработчик. За да направите това, кликнете върху "Excel" Parameters "

Ние поставяме отметката на "Покажи раздела" Разработчик "на лентата"


След това, на лентата, в горната част на листа Excel ще се появи раздела разработчик, който съдържа инструментите за създаване на VBA макроси.
Представете си малка задача - ние приемаме, че имаме 2 номера, трябва да ги сгъваме и в получената сума, за да получите стойност от нашата маса.
Слагаме следните стойности в листовата клетка:


На листа2 попълнете клетките, създавайки таблица от 2 колони


След това кликнете върху списъка1, кликнете върху раздела разработчик, "Inser", изберете бутона върху него.
и начертайте бутон на листа1, след което ще се появи прозорецът "присвояване на макро съобщение", в който изберете "Създаване"

След това се отваря Visual Basic Editor и името на процедурата автоматично ще бъде написано, което ще бъде изпълнено, когато бутонът е натиснат. В рамките на процедурата ще въведете следния код:


Кодът ще изпълни тези стъпки:

  • Msgbox ("Това е моят първи макрос!") - съобщение
  • Променливата Q се присвоява на клетката на листа1, с координати на 2 низ, 2 колони
  • Променлива W се присвоява на клетъчната стойност на листа1, с координати от 3 низ, 2 колони
  • В клетката на листа1, с координати 4 низ, 2 колона, сумата от Q + W се записва



След това получаваме стойността на колоната в листа2, която се намира на една и съща линия, където стойността на нашата сума съвпада със стойността на колоната А.
Въвеждаме следния код:


И получавам, когато натиснете бутона за следващия резултат:


От резултата е ясно, че макросът е взел номера от таблицата на листа2 според нашата сума.
Няма да отида в детайлите на този труден код, тъй като целта на тази статия е да започнете да пиша макроси. За VBA в интернет има много ресурси, примери и обяснения, въпреки че количеството информация в помощта е достатъчно, за да автоматизира изчисленията.

Така, използването на VBA е възможно да се автоматизира изчисляването на всякаква сложност и последователност. Референтните таблици могат да бъдат копирани от различна литература върху отделни листове на Excel и да напишете серийно изчисление с бутони.

Тема 2.3. Софтуерни презентации и основи на офис програмирането

Тема 2.4. Системи за управление на бази данни и експертни системи

2.4.11. Образователна база данни с главната клавиатура форма "Trearm_students" - изтегляне

VBA програмиране и макроси

2.3. Софтуерни презентации и основи на офис програмирането

2.3.7. Основи на офис програмирането

Език за визуално програмиране Basic за приложения: Visual Basic за приложения (VBA)

VBA е подгрупа от визуалния програментен език Visual Basic (VB), който включва почти всички VB приложения.

VBA е различен от езика на VB за програмиране от факта, че VBA системата е предназначена да работи директно с Office обекти, не е възможно да се създаде проект, независимо от служебните приложения. По този начин, в езика за програмиране VBA е VB, и средата за програмиране се осъществява като VB редактор, който може да бъде активиран от всяко приложение на MS Office.

Например, за да отворите VBA редактора от приложението PowerPoint, трябва да изпълните редактора на услугата / Macro Command / VBA. Можете да се върнете от редактора на приложението, като изберете командата Microsoft PowerPoint в менюто Изглед или комбинацията ALT + F11.

Използване на вградения VBA редактор, набор от управление и редактор на формулярите, потребителят може да създаде потребителски интерфейс за проекта, разработен с формата на екрана. Контролните елементи са обекти и за всеки обект, няколко възможни събития (например щракване или двойно кликване на мишката, натискане на клавиша, плъзгане обект и др.).

Всяко събитие се проявява в определени действия на програмата (отговори, реакции). Формата на потребителя ви позволява да създавате диалогов прозорец за приложения. Езикът за програмиране на VBA се използва за записване на програмен код, например за създаване на потребителски функции в Excel.

Фактът, че системата за програмиране VBA е предназначена да работи с офис обекти, дава възможност за ефективно прилагане да се прилагат дейности, свързани с разработването на различни видове документи.

Помислете за алгоритъма за създаване на потребителски функции в VBA:

1. Обадете се на прозореца VBA Code Editor, като изпълните услугата / Macro Command / Visual Basic Editor или натиснете Alt + F11.

2. Стартирайте менюто за вмъкване / модул (вмъкване / модул).

3. След това изпълнете вложка / процедура (вложка / процедура). В диалоговия прозорец Добавяне на процедурата, който се отваря, въведете името на функцията (например sum5) и задайте превключвателите: тип (тип) - към функцията (функция); Обхват - до публичен (общо) и кликнете върху OK.


Фиг. един.

4. В прозореца на редактора за програмиране на VBA ще се появи функционален детайл: Заглавие - Обществена функция Сума5 () и крайна функция, между която трябва да поставите функцията за кода на тялото.


Фиг. 2.

5. След това въведете списъка с параметрите на функцията, например в скоби, покажете (x, y, z, i, j), типа данни (за точни изчисления) и вида на стойността, върната от функцията (в Този пример няма да влезем). В допълнение, ние въвеждаме тялото на функцията, например сумата5 \u003d x + y + z + i + j. В резултат на това получаваме следния текст текст:

Обществена функция Сума5 (x, y, z, i, j)
Sum5 \u003d x + y + z + i + j
Крайна функция.

6. Връщаме се в прозореца на приложения на Excel, в който, например, трябва да обобщим пет стойности.

7. Извършваме "вмъкване / функция" и в отвора на функционалния съветник, който се отваря, изберете категорията "Дефинирана от потребителя" и в прозореца "Изберете функция" изберете Sum5 и щракнете върху OK.



Фиг. 3.



Фиг. четири.

Макроси

Създаване на макрос

Създайте макрос, за да обобщите автоматично две числа в клетки А1, В1 и поставете резултата в С1 клетката, както и C1 клетъчната пълнене с тюркоазен цвят.

Макро създаване на алгоритъм за задачата:

1. Изберете Инструменти / макрос, стартиране на запис.

2. В полето за макро име въведете име за макроса. Първото име на макроса трябва да бъде писмото. Пространствата не са разрешени в макро името; Като разделители на думи можете да използвате долни черти.

3. За да стартирате макроса с помощта на комбинацията от ключове, въведете буквата в полето за комбиниране на клавишите. Позволено е да се използва CTRL + буква (за малки букви) или ctrl + shift + буква (за главни букви), където буквата е ключ за букви на клавиатурата. Не избирайте комбинация от стандартна ключове, тъй като избраната клавишна комбинация подхранва стандартните комбинации от клавишите на Microsoft Excel по това време с тази книга.

4. В полето "Запазване" изберете книгата, в която искате да запазите макроса. Запазете макроса в тази книга. За да създадете кратко описание на макроса, въведете необходимия текст в полето Описание. В екрана, пример за запълване на прозореца на диалоговия прозорец за запис на макрозапис


Фиг. пет.

5. Щракнете върху OK.

6. Извършете макросите да пишете.


Фиг. 6.

7. Щракнете върху Спрете за запис на плаваща лента с инструменти на OS (стоп запис) или Macro на услуга / Macro / Stop.

В края на записа на макроса, той се появява в списъка на макросите под негово име.

Редакторът на VBA автоматично записва макро последователност или програма за изпълнени действия (фиг. 7.).



Фиг. 7.

За да се обадите на макроса, трябва да изпълните услугата / Macro командата / макросите. След това в диалоговия прозорец Macro списъка той може да бъде намерен по име и щракнете върху бутона RUN.

Бутон за инструменти за инструменти за стартиране на макрос

Macro може да започне да използва бутона на вградената лента с инструменти, за това трябва да изпълните:

  1. Изберете Настройки в менюто Инструменти.
  2. В прозореца на диалоговия прозорец изберете раздела Команди и изберете Macros в списъка с категории, изберете "Бутон за персонализиране" в списъка Command.
  3. От списъка с команди плъзнете персонализирания бутон към лентата с инструменти, като използвате мишката.
  4. Кликнете върху този бутон с десния бутон на мишката и изберете командата ASSIGN MACRO в контекстното меню.
  5. Въведете макро името в полето за макро име.

Цел на областта на графичния обект за стартиране на макрос:

  1. Създайте графичен обект.
  2. Към избрания графичен обект, приложите контекстното меню.
  3. Изберете макрос в контекстното меню в контекстното меню.
  4. В диалоговия прозорец, който изглежда "присвояване на макро предмет, който се появява, въведете името на макроса в полето за макро име, след което щракнете върху OK.

Редактирането на макрос се извършва от VBA редактора, за това трябва да направите следното:

  1. Изберете услугата / Macro / Macro командата.
  2. Изберете името на макроса, който ще се промени, в списъка с имена.
  3. Щракнете върху бутона Редактиране, ще се отвори визуалният основен прозорец, в който е възможно да редактирате команди на избрания макрос, записан във визуалния основен език.


Отстраняване на макрос:

  1. В менюто Инструменти изберете Macro, а след това командата MACROS.
  2. В списъка на макросите на текущата работна книга трябва да изберете макроса, който трябва да бъде премахнат и щракнете върху бутона Изтрий.

Преименуване на макро

За да преименувате макроса, трябва да въведете режим за редактиране на макроси и в текста на програмата, за да промените заглавието. Новото име автоматично ще замени старите в списъците на макросите, а макрос с ново име ще бъде причинено от клавишите за бърз достъп.

Таблиците или други офис обекти често се срещат ситуации, когато е необходимо да се правят същите действия. Тя не само поема с течение на времето, но е много досадно. За щастие, макросите съществуват за решаване на този проблем.

VBA софтуерната среда е предназначена за създаване на макроси, но не е необходимо да бъде програмист и да изучавате визуални основни за прилагане, за да се научите как да ги пишете. За това има специално проектирани средства, които вашият екип създава VBA кода, като същевременно не изисква допълнителни знания. Въпреки това не е толкова трудно да се овладеят този език.

Макросите са създадени в приложения за записване на инструменти. В същото време се определя специфична ключова комбинация от желаната последователност от действия. Отворено лицензиране. Изберете фрагмент, който ще форматирате.

Изберете елемента от менюто "Service" -\u003e "Macro" -\u003e "Start Record" (в Office 2007 - "View" -\u003e Macros -\u003e "Macro Record"). В прозореца "Macro Record", който се появява, задайте името на новия макрос, по подразбиране е "Macro1", но е по-добре да го дадете име, особено ако макросът ще бъде няколко. Максималният размер на полето на името - 255 знака не може да използва знаците на точката и пространството.

Решете с избора на бутон или ключова комбинация, според която вашият макрос ще работи в бъдеще. Опитайте се да изберете най-удобния вариант, особено ако е предназначен за честа употреба. Изберете съответния елемент "Присвояване на макро": "бутон" или "клавиши".

Ако сте избрали "бутон", отваря се прозорец "Бърза настройка". Когато е избрано "клавишите", е достатъчно просто да въведете комбинация на клавиатурата. Вижте "Текущи комбинации", за да избегнете повторение. Кликнете върху "Задаване".

Създаденият макрос в Word и PowerPoint ще действа за всички документи в бъдеще. За да направите макрос в Excel за всички документи, запазете го в файла Personal.xls, който започва автоматично, когато приложението е отворено. Стартирайте командата "Window" -\u003e "Показване" и маркирайте линията с името на файла Personal.xls в появата на прозореца.

Въведете описанието на макроса в полето "Описание". Кликнете върху OK и ще се върнете към документа, но сега можете да видите иконата за запис на курсора на мишката. Формат на текста към последователността на действията, които искате да автоматизирате. Бъдете много внимателни и не правете допълнително действие, защото макросът ще ги напише и това ще повлияе на времето на нейното изпълнение в бъдеще.

Стартирайте командата "услуга" -\u003e "macro" -\u003e "стоп запис". Създал сте обект VBA, без да пишете кода за шев. Въпреки това, ако все още трябва да правите промени ръчно, влезте в обекта чрез секцията MACROS, командата "Промяна" или от комбинацията ALT + F8.

Функциите на Excel не се ограничават до набор от вградени функции. С помощта на писането на макроси можете да създадете свои собствени функции за извършване на нестандартни задачи в Excel.

Например, самостоятелно писмено макрос може да бъде вързан за иконата и да се покаже менюто на лентата. Или можете да създадете функция на потребителя (UDF) и да я използвате по същия начин, както другите функции на Excel.

Macro е компютърен код, написан на Excel в програмирането на езика Visual Basic за приложения (VBA). Основните понятия на езика за програмиране на VBA се обсъждат на нашия уебсайт в учебника на VBA. Въпреки това, преди да присвоите VBA код, препоръчваме да се запознаете с уроците, в които се разглеждат сигурността на Excel Macros и визуалния основен редактор.

Създаване на разрешения за макроси до Excel

Excel осигурява вградена вирусна защита, която може да проникне в компютър чрез макроси. Ако искате да стартирате Excel Macro в книгата, уверете се, че настройките за защита са зададени правилно.

Редактор Visual Basic.

Макрос запис

Excel Toolkit за запис на макроси е чудесен начин за ефективно изпълнение на прости повтарящи се задачи. Той може да се използва и като спомагателни средства при писане на по-сложни макроси.

Excel VBA учебник

За тези, които просто започват да овладеят езика за програмиране на Excel VBA, ние предлагаме малък уводен курс по визуални основни за приложения.

За да автоматизирате повтарящите се задачи в Microsoft Excel, можете бързо да напишете макрос. Да предположим, че имате дати в различен формат и искате да приложите един формат на всички тях. Това може да се направи с помощта на макрос. Можете да напишете макрос, който прилага желания формат и след това да го стартирате, ако е необходимо.

Когато макрозаписите, всички стъпки, описани в Visual Basic, се записват за приложения (VBA) код. Тези действия могат да включват въвеждане на текст или цифри, натискане на клетки или команди на лента или в менюто, форматиране на клетки, редове или колони, както и внос на данни от външен източник, като например достъп до Microsoft. Визуално основно (VBA) Приложението е подмножество на мощния език за програмиране на визуалния базов, който е включен в повечето офис приложения. Въпреки факта, че VBA предоставя възможност за автоматизиране на процесите между Office Applications, не е необходимо да знаете VBA кода или софтуерното програмиране, ако е необходимо.

Важно е да се знае, че по време на записването на макроса е записано почти всички ваши действия. Ето защо, ако направите грешка, например натиснете грешен бутон, инструментът за запис на макрозапис ще регистрира това действие. В този случай можете да запишете цялата последователност или да промените VBA кода. Следователно, преди да запишете процеса, е необходимо да се работи добре. По-точно, ще запишете последователността, толкова по-ефективно ще работи макросът.

РазработчикКоето е скрито по подразбиране, така че първо трябва да го включите. За повече информация вижте статията показва раздела Разработване.

Макро запис

В раздела Разработчик Кликнете МакросиЗа да видите макросите, свързани с книгата. В допълнение, можете да натиснете клавишите Alt + F8.. Това отваря диалоговия прозорец. Макро.


ВНИМАНИЕ:

Информация за сигурността на макросите и тяхната стойност.

Макросите могат да бъдат пуснати по различни начини, например, като се използва комбинация от клавиатура, графичен обект, панел за бърз достъп, бутони или дори при отваряне на книга.

Използвайки визуалния основен редактор, можете да промените макросите, прикрепени към книгата.

    задайте макрос.

    В полето Задайте макрос

Научете как да активирате и деактивирате макросите в офис файлове.

Натиснете клавишите Alt + F11..

Работа с записания код в Visual Basic Editor (VBE)

Използвайки визуалния основен редактор (VBE), можете да добавите свои собствени променливи към записания код, контролни структури и други елементи, които не поддържат инструмента за запис на макрозапис. Тъй като инструментът за запис на макрос фиксира почти всяка стъпка, изпълнена по време на запис, може да е необходимо да се премахне ненужният код. Преглед на записания код - чудесен начин да се научите да програмирате на VBA или да усъвършенствате уменията си.

Пример за промяна на записания код може да бъде намерено в статията започва с VBA в Excel.

Макро запис

Преди записването на макроси е полезно да се знае следното:

    Макрозаписът, записан за работа с акселов обхват, ще се извършва само за клетки от този диапазон. Ето защо, ако добавите нов низ в диапазона, макросът няма да се отнася за него.

    Ако трябва да напишете дълга поредица от задачи, ние ви съветваме да използвате някои по-малки макроси.

    Macro може да съдържа и двете задачи за изключение. Макро процесът може да обхваща други офис приложения и други програми, които поддържат Visual Basic за приложения (VBA). Например, можете да запишете макроса, който първо актуализира таблицата в Excel и след това отваря Outlook, за да го изпратите по имейл.

Macros и VBA инструменти са разположени в раздела. РазработчикКоето е скрито по подразбиране, така че първо трябва да го включите.

    Отидете в Настройки\u003e Excel... Лента с инструменти &\u003e панделки.

За да запишете макрос, следвайте инструкциите по-долу.

Работа с макроси, записани в Excel

В раздела Разработчик Кликнете МакросиЗа да видите макросите, свързани с книгата. Това отваря диалоговия прозорец. Макро.

Забележка: Макросите не могат да бъдат отменени. Преди да стартирате записан макрос, запаметете книгата или да създадете копие от него, за да предотвратите нежелани промени. Ако не сте доволни от резултатите от макроса, можете да затворите книгата, без да я запазите.

По-долу са повече информация за работата с макроси в Excel.

Научете как да активирате и деактивирате макросите в Excel за Mac.

Ако книгата съдържа VBA макрос, който да се използва навсякъде другаде, този модул може да бъде копиран в друга книга, използвайки Microsoft Visual Basic Editor.

Обект за назначаване, фигура или графичен елемент

    На листа, щракнете с десния бутон върху обекта, чертежа, формата или елемента, към който искате да присвоите съществуващ макрос, и след това изберете командата задайте макрос.

    В полето Задайте макрос Изберете макроса, който искате да присвоите.

Можете да зададете макро икона и да я добавите към панела за бърз достъп или лента.

Можете да присвоите форми на макроси и елементи на ActiveX на лист.

Откриване на визуалния основен редактор

В раздела Разработчик Кликнете Visual Basic. или изберете Обслужване > Макро > Редактор Visual Basic..

Научете как да намерите сертификат за елементите на визуалното основно.

Допълнителна информация

Винаги можете да зададете въпрос от общността на Excel Tech, да поискате помощ в общността на общността, както и да предложите нова функция или подобрение на уебсайта.

Дял