Что можно сделать макросами в excel. Как научиться писать макросы

Е сли в программе MS Excel вы часто выполняете сходные действия, то облегчить вам жизнь помогут макросы.

Макрос в Excel — это работающая внутри Excel программа, зачастую созданная самим пользователем, которая помогает автоматизировать выполнение частых действий. Огромный плюс макросов в Excel — для их создания не требуется знание языков программирования.

Конечно, зная Visual Baisic for Applications, вы можете создавать более сложные и совершенные приложения, однако для большинства пользователей достаточно уметь включить запись макроса, выключить её и знать, как его запустить.

Инструкция для начинающих

Для удобства работы с макросами надо включить вкладку «Разработчик» на ленте. Для это зайдите в «Параметры» программы», там выберите вкладку «Настройка ленты» и в разделе «Основные вкладки» добавьте вкладку «Разработчик».
Добавление панели «Разработчик»

Теперь попробуем создать макрос. Для это на вкладке «Разработчик» нажмите кнопку «Записать макрос». Откроется диалоговое окно, в котором вам предложат заполнить ряд полей. Нам сейчас важны поля «Имя макроса» и «Сочетание клавиш».

Дайте макросу имя и присвойте сочетание клавиш для вызова. После нажатия кнопки «OK» начнётся запись макроса. Проделайте набор различных действий (например, введите текст в ячейку). После этого нажмите «Остановить запись». Макрос записан.

Запустить полученный макрос можно несколькими способами. Вы можете нажать присвоенное макросу ранее сочетание клавиш, выполнение макроса начнётся незамедлительно. Ещё вы можете нажать кнопку «Макросы» на вкладке «Разработчик». Перед вами откроется список доступных макросов, выберите нужный по имени и запустите его.


Выполнение макросов можно присваивать элементам управления формы, картинкам и другим объектам. Для этого по объекту следует кликнуть правой кнопкой мыши и выбрать «Назначить макрос».

Макросы могут иметь огромную функциональность и значительно расширять возможности пользователя, но для этого придётся серьёзно потрудиться над их изучением. Однако простейшие макросы вы можете писать уже сейчас.

Также как и в других приложениях Microsoft Office , есть такая интересная штука как макрос. Если в двух словах, то макрос – это программируемая последовательность действий. Создать его можно двумя способами:

1. С помощью соответствующего пункта меню;

2. Вручную.

Первый способ очень простой и не требует специальных навыков программирования. Но прежде чем приступать к созданию макроса, необходимо поковырять настройки безопасности. Заходим в Файл/Параметры/Центр управления безопасностью/Параметры центра управления безопасностью/Параметры макросов . Здесь необходимо выбрать Включить все макросы .


Теперь все готово, и мы переходим непосредственно к созданию макроса. Открываем вкладку Разработчик и нажимаем .

Появится окно, в котором нужно указать имя макроса, назначить клавишу для быстрого запуска, а также выбрать книгу, в которую необходимо сохранить макрос.

После нажатия кнопки ОК начинается запись макроса. Все что вы будете делать, будет записываться. К примеру, можно создать таблицу и отредактировать ее – задать нужное количество строк, столбцов, их ширину. Затем, чтобы остановить запись, нужно нажать соответствующую кнопку.

Теперь, чтобы запустить наш макрос, нужно на вкладке Разработчик нажать Макросы .

В появившемся окне находим созданный нами макрос и нажимаем Выполнить . Также можно использовать комбинацию клавиш, которую мы вводили при создании макроса.

Преимуществ у данного способа создания макросов не очень много. В большинстве случаев такой макрос можно применить только в текущей книге и для какой-то конкретной ситуации. Гораздо эффективнее использовать макрос, написанный при помощи языка программирования Visual Basic . Однако создание такого макроса требует определенных навыков. Пример создания макроса на VBA рассмотрен .

Создание макросов и их применение в Excel Разбираемые вопросы: Понятие макроса. Назначение макроса графическим изображениям. Понятие макроса Прежде чем приступить к написанию программ на VB воспользуемся простой возможностью создания программы макроса на языке VB с использованием McroRecorder. Кроме этого созданный код макроса может служить основой для дальнейших разработок.


Поделитесь работой в социальных сетях

Если эта работа Вам не подошла внизу страницы есть список похожих работ. Так же Вы можете воспользоваться кнопкой поиск


Лекция №2. Создание макросов и их применение в Excel

Разбираемые вопросы:

  1. Понятие макроса.
  2. Запись простых макросов.
  3. Выполнение макросов.
  4. Редактирование макросов.
  5. Назначение макроса графическим изображениям.
  6. Удаление макросов.
  7. Ограниченность макросов.

Понятие макроса

Прежде чем приступить к написанию программ на VBA , воспользуемся простой возможностью создания программы (макроса) на языке VBA с использованием MacroRecorder .

MacroRecorder – это стандартное средство записи макросов в Excel , посредством которого можно записывать последовательность действий пользователя и получать соответствующий код (программу) на VBA . Программа, созданная с помощью MacroRecorder , называется макросом.

Основное назначение макросов – автоматизация работы пользователя. Кроме этого, созданный код макроса может служить основой для дальнейших разработок.

При записи макроса запоминаются все действия пользователя, будь то нажатие клавиши или выбор определенной команды меню, которые автоматически преобразуются в программный код на языке VBA .

Каждому макросу дается имя, а для быстрого запуска макроса можно создать или присвоить ему «горячую» клавишу (клавишу, по нажатию на которую будет происходить запуск макроса). После запуска макрос будет автоматически выполнен тем приложением, в котором он создан и запущен. При выполнении макроса компьютер воспроизведет все действия пользователя.

Макрос – это именованная последовательность заданных пользователем команд и действий, хранящаяся в форме программы на языке VBA .

Запись макросов в приложении Excel

Для работы с макросами в приложении Excel имеется специальная панель.

Для вызова этой панели необходимо выполнить последовательно команды меню: Вид → Панели инструментов → Visual Basic .

Для записи макроса необходимо:

  1. Нажать на кнопку «Запись макроса» на панели Visual Basic .
  2. В диалоговом окне «Запись макроса» присвоить имя макросу. (В имени макроса первым символом должна быть буква, не допускается использование пробелов).
  3. Выполнить действия, которые нужно записать.
  4. Нажать кнопку «Остановить запись».

Пример

Рассмотрим процедуру записи последовательности действий на следующем примере: определим максимальное значение в выделенном диапазоне ячеек.

Имеется таблица с информацией о самых ценных алмазах в мире.

Нам требуется создать макрос для нахождения алмаза с максимальной массой в граммах.

Это действие в Excel можно выполнить с помощью стандартной функции МАКС, но мы продемонстрируем на этом примере, как сохранить последовательность действий пользователя и на их основе создать макрос.

Выполним следующие действия:

  1. Откроем новую книгу.
  2. Создадим таблицу по приведенному образцу.
  3. В ячейке D 9 наберем «Максимальная масса в граммах».
  4. На панели Visual Basic нажмем кнопку «Запись макроса». Появится диалоговое окно «Запись макроса»:

  1. Введем вместо названия «Макрос1» название макроса «Алмаз» и нажмем «ОК». На экране появится панель инструментов « Остановить запись ».

Теперь все производимые нами действия будут записываться до тех пор, пока не будет нажата эта кнопка. Не выполняйте никаких лишних действий. Все наши действия фиксируются и записываются .

  1. Установим курсор в ячейку E 10. В этой ячейке должен появиться результат.
  2. Выполним команду Вставка → Функция . Появится диалоговое окно « Мастер функций ».
  3. Выберем в окне « Категории функций » « Статистические », где выберем функцию МАКС. Появится диалоговое окно, в первой строке которого необходимо указать диапазон, в котором мы будем искать максимальное значение, а – E 2: E 9. нажмем «ОК».

Выполнение макросов

При выполнении макроса Excel повторяет те же действия, которые пользователь выполнял в процессе его создания. Продолжим работу с созданным макросом.

Чтобы проверить, как работает созданный нами макрос, прежде всего надо удалить из ячейки E 10 полученный результат. Затем:

  1. Установим курсор в любую ячейку листа.
  2. Выполним команду Сервис → Макрос → Макросы . Появится диалоговое окно « Макрос ».
  3. Выполнить ». В ячейке E 10 появится результат.

Редактирование макросов

Во время записи макроса Excel запоминает наши действия и преобразует их в код VBA . Можно просмотреть полученный код и отредактировать его, если в этом есть необходимость. Для просмотра созданного макроса выполните команду Сервис → Макрос → Макросы . Появится уже знакомое диалоговое окно « Макрос ».

Выделим макрос «Алмаз» и щелкнем по кнопке « Изменить ». Откроется окно редактора:

При записи макроса выполнялись всего два действия. Сначала мы установили курсор в ячейку E 10. на языке VBA этому действию соответствует строка:

Range (“ E 10”). Select

Затем мы вызвали функцию МАКС и в качестве аргумента указали диапазон ячеек E 2: E 9:

Полученный код можно редактировать непосредственно в редакторе Visual Basic . Изменим размер шрифта в ячейке E 10 на 16:

Range (“ E 10”). Font . Size = 16

Можно также изменить цвет шрифта. Например, изменим цвет текста в ячейке на красный:

Range (E 10”). Font . ColorIndex = 3

Значения, которые может принять свойство Font . ColorIndex , изменяется от 1 до 56.

После внесенных изменений текст макроса стал следующим:

Sub Алмаз ()

‘ Алмаз Макрос

Range(“E10”).Select

ActiveCell.FormulaR1C1 = “=MAX(R[-8]C:R[-1]C)”

Range(“E10”).Font.Size = 16

Range(“E10”).Font.ColorIndex = 3

End Sub

Закройте окно редактора, вернитесь на лист Excel , удалите содержимое ячейки E 10 и запустите макрос на выполнение.

Назначение макроса графическим изображениям

Разрабатывая приложение, надо думать о том, чтобы создать легкий и удобный интерфейс для выполнения задач автоматизации. Запуск макросов на выполнение посредством команд меню или кнопок на панели Visual Basic – не слишком удобный механизм для пользователей.

Для запуска макроса можно использовать любой элемент, находящийся на рабочем листе. Например, можно использовать для запуска любое графическое изображение. Рассмотрим соответствующий пример.

Используя панель « Рисование », нарисуем на листе любую автофигуру. Щелкнем правой кнопкой мыши на изображении и в открывшемся контекстном меню выберем команду « Назначить макрос ». Отобразится диалоговое окно « Назначить макрос объекту ». Затем необходимо выбрать макрос «Алмаз» и щелкнуть вне графического изображения, чтобы снять выделение с объекта.

Теперь макрос «Алмаз» можно запустить посредством щелчка на автофигуре.

Запустить макрос на выполнение можно и другим способом, используя командную кнопку. Вставить командную кнопку непосредственно на рабочий лист Excel можно с помощью панели инструментов « Формы » (Вид → Панели инструментов → Формы ). Затем необходимо назначить ей наш макрос.

Удаление макросов из списка макросов

Для того чтобы удалить макрос, надо:

  1. Выполнить команду Сервис → Макрос → Макросы . Появится уже знакомое диалоговое окно.
  2. Выделить макрос, подлежащий удалению, и щелкнуть по кнопке « Удалить ».
  3. Подтвердить выполнение операции в специальном окне, которое появится.

Ограниченность макросов

Множество операций Excel можно автоматизировать посредством макросов. Но макросы имеют и ограничения. С помощью макросов нельзя выполнить различные действия в зависимости от содержимого ячейки, нельзя вызвать некоторые диалоговые окна Excel , например, сохранить документ, нельзя отобразить и использовать пользовательские формы ввода данных.

Эти ограничения приводят к необходимости создания программ на VBA .

PAGE 4

Выполнение макроса

Запись

макроса

Вызов редактора VBA

Вызов панели элементов управления

Вызов конструктора форм

Вызов редактора сценариев

нопка

Панель «Формы»

Другие похожие работы, которые могут вас заинтересовать.вшм>

6386. Практическое применение функций MS Excel 219.04 KB
Microsoft Excel программа предназначена для организации данных в таблице для документирования и графического представления информации. Рабочие книги MS Excel предоставляют возможность хранения и организации данных вычисления суммы значений в ячейках...
12001. Создание производства и применение новых кислотных комплексообразующих реагентов для увеличения нефтеотдачи карбонатных и глинистых нефтяных коллекторов 18.13 KB
При этом следует учитывать что 1 часть реагента АФК эквивалентна по эффективности 10 частям состава на основе соляной кислоты что резко снижает транспортные расходы на доставку продукции на нефтепромыслы. К настоящему моменту уже произведено более 40 тонн реагента. В 2012 году проводились испытания реагента при закачке в добывающие скважины ОАО Татнефть обработано 17 скважин. Также проводятся экспериментальные работы по закачке реагента по двум технологиям в нагнетательные скважины ЗАО Предприятие Кара Алтын 2 скважины.
7988. Создание аналитической геометрии Р.Декартом. Геометрии Лобачевского, Римана и их применение 30.59 KB
Тема: Создание аналитической геометрии Р. Геометрии Лобачевского Римана и их применение. Создание аналитической геометрии Рене Декартом. Геометрии Лобачевского Римана и их применение: а геометрия Лобачевского; б создание неевклидовой геометрии; в утверждение геометрии Лобачевского; г геометрия Римана.
3861. ПОДГОТОВКА ТЕСТА В MS EXCEL 256.43 KB
ПОДГОТОВКА ТЕСТА В MS EXCEL, На Листе1 наберем вопросы а на Листе2 разместим варианты ответов список ответов должен быть вертикальным первый ответ – пустой для того чтобы после ответа первого учащегося тест можно было вернуть в первоначальное положение т. Заполним поля: Нажмем ОК и в ячейку D1 вставится следующая функция: Смысл функции в следующем: Если ответ в тестируемой ячейке C1 совпадает с верным то в ячейку D1 поместить 1 балл иначе 0 в данном случае верным будет ответ – заметно ухудшилось он имеет порядковый номер 2 потому что ответ №1 пустой. 1...
4776. ЗВЕДЕНІ ТАБЛИЦІ В EXCEL 39.01 KB
Зведені таблиці є одним з найбільш могутніх засобів MS Excel з аналізубаз даних розміщених у таблицях чи списках. Зведені таблиці зручні при аналізі даних з кількохпричин: Дозволяють створювати узагальнюючі таблиці що надають можливість групування однотипних даних підведення підсумків підведення статистичних характеристик записів...
4777. ВІКНО ПРОГРАМИ EXCEL 146.22 KB
Операції з листами Основні операції що виконуються з робочими листами зібрані в контекстному меню яке відкривається після клацання правою кнопкою миші вкладки аркуша. Воно містить команди: Додати Insert Видалити Delete Перейменувати Renme Переместіть ськопіровать Move or Copy Виділити всі листи Select ll Sheets і так далі Наприклад аби задати типа аркуша що вставляється: Аркуш Worksheet Діаграма Chrt Макрос MS Excel. Вибір типа аркуша що вставляється.
1577. Використання списків у програмі EXCEL 1.93 MB
Визначивши діапазон як список можна керувати даними в цьому списку та аналізувати їх незалежно від інших даних поза межами списку. Наприклад використовуючи лише дані у списку можна фільтрувати стовпці додавати рядок підсумків і навіть створювати звіти зведених таблиць. Визначивши діапазон як список можна керувати даними в цьому списку та аналізувати їх незалежно від інших даних поза межами списку.
7166. Назначение электронных таблиц. Знакомство с MS Excel 76.37 KB
В нижней части окна книги размещаются ярлычки листов и кнопки их прокрутки а в верхней части строка заголовка. Кроме того окно содержит листы и полосы прокрутки. Две средние кнопки служат для прокрутки на один ярлычок влево или вправо. Перечисленные кнопки прокрутки и маркер разделения ярлычков не активизируют листы книги.
7387. Статистичний аналіз даних засобами програми Excel 411.31 KB
Статистичний аналіз даних засобами програми Excel Автор: к. Засоби статистичного аналізу даних у програмі Excel. Використання статистичних функцій для інтерполяції та екстраполяції даних та інше Засоби статистичного аналізу даних у програмі Excel До складу Microsoft Excel входить набір засобів аналізу даних так званий пакет аналізу призначений...
20180. Параметры и объекты диаграмм в Microsoft Office Excel 1.01 MB
Диаграммы позволяют: отобразить данные более наглядно облегчить их восприятие помочь при анализе и сравнении наблюдать за изменениями значений. А для анализа удобно использовать диаграммы с их специальными возможностями. Результатом работы табличного процессора является документ в виде таблицы или диаграммы.

Многие из Вас наверняка слышали термин «Макрос». Иногда при запуске некоторых документов Word, а чаще Excel, Вам выскакивало предупреждение: «Данный документ содержит макросы, которые могут нанести вред Вашему компьютеру. С целью безопасности макросы были отключены» и т.д. И многих это предупреждение пугает, хотя большая доля правды в этом предупреждении все ж присутствует. Но, это относится к документам, попавшим к Вам из неизвестных источников, а именно из сети, по почте и т.д. Чем же так опасен макрос и для чего они тогда нужны, если их использование небезопасно? Рассмотрим далее, а пока дадим определение макросу.

Что такое «Макрос»?

Макрос это программа, которая содержит набор инструкций выполняющих какие либо действия, как автоматически, так и по требованию пользователя, т.е. выполняются явно и неявно. Макрос от сокращенного «макрокоманда ». Широкое распространение данное понятие получило благодаря корпорации Microsoft, которая реализовала возможность написания макросов в своих продуктах, а именно всеми любимый и известный Office(Word, Excel, Access и т.д.). Используемый язык в макросах - Visual Basic, так же продукт Microsoft, но с некоторыми ограничениями.

Как работают макросы?

Благодаря внедрению в MS Office языка Visual Basic, Microsoft удалось значительно расширить функционал своих продуктов. Макрокоманды, записанные пользователями или написанные программистами, способны автоматизировать большинство процессов и значительно сократить время на обработку данных. Тем самым, оптимизировать рабочее время сотрудников. Для выполнения макрокоманд необходима своя программная среда, в которой эти команды способны работать. Такой средой являются, например Excel, Word, Access. При написании сложных макросов, их запуск и выполнение, как правило, ограничивается рабочей станцией (ПК) на которой он был написан. Сложные, имеется ввиду, подключение дополнительных компонентов и объектов, которые попросту могут отсутствовать на другом ПК. Происходит это потому, что программный код не переводится в исполняемый машинный код и вдобавок к которому прикладываются необходимые модули и библиотеки, а выполняется через интерпретатор . Но, есть и преимущества в таком подходе, а именно, возможность произвести отладку сразу, «на месте», при возникновении каких либо ошибок, просмотреть код и дополнить его новыми инструкциями, расширив функционал макроса. Как правило, макросы написанные для Excel, не работают в Word или Access, только если не используется базовый набор процедур и функций, которые не затрагивают объекты приложения.

Как макросы помогают в работе?

При работе с большими объемами данных, которые необходимо тем, или иным образом обрабатывать, а так же при выполнении однообразных действий по обработке информации в таблицах (например, формирование сводных таблиц определенного формата), макросы незаменимы. Пример: Вам ежедневно необходимо получать данные из БД, производить с этими данными некоторые расчеты, затем из результатов свести сводную таблицу. На все у Вас уходит, допустим, 2 часа. Разработав и внедрив такой макрос, который будет все эти действия производить самостоятельно, у Вас время сократиться до пары минут, а точнее секунд т.к. остальное уйдет на открытие и получение данных. А если еще к расчетам «вручную» добавить допущенные механические ошибки, которые обязательно бываю, и которые в лучшем случае Вы обнаружите и будете искать, то это еще добавит время к тем двум часам. Макрос же при грамотной разработке и хорошо протестированный, позволяет избежать таких ошибок.

Это один из многих вариантов применения. Другой пример, на личном опыте. При работе с ежедневными накопительными данными, мне приходилось заполнять поле «Контрагент» (КА) соответствующим именем, имеющимся в базе. Название КА должно обязательно быть идентичным. Создание списка очень неудобно т.к. список состоит не из одной сотни КА. Я написал макрос, который запускается на исполнение, при нажатии в соответствующей колонке, правой кнопкой мыши. Открывается форма, со списком КА в которой также имеется «горячий поиск» в списке т.е. достаточно начать вводить сочетание символов содержащихся в названии и список тут же отфильтрует и оставит подходящих, далее остается выбрать из двух трех КА нужного. На все про все, не больше 5 сек. Вот как вариант. И примеров можно приводить кучу, в зависимости от специфики работы.

В чем заключается опасность макросов?

Как я уже говорил выше, макросы могут быть как полезны, так и опасны. Все зависит от того с какой целью и кем он был написан. В чем заключается опасность? Так как в написании макросов используется язык Visual Basic, то располагая всем его функционалом, злоумышленник способен написать на этом языке вирус – «макровирус». Макровирус способен повредить все данные, способен работать как программа шпион и т.д. Время жизни такого вируса - пока запущено приложение(Excel, Word и т.д.). После внедрения такого вируса, в дальнейшем, его запуск будет осуществляться в скрытом от пользователя режиме. Макросы так же способны выступать в роли посредника для внедрения более серьезных угроз всей системе. Например, активировав макрос, произойдет копирование или генерирование троянской программы, которая работает под управлением операционной системы, с последующим ее запуском. А это уже угроза работе всей системе.

Варианты защиты от таких макросов:

  • Повысить уровень безопасности Excel (способ не удобен т.к. и полезные макросы не будут работать);
  • Не открывать файлы из неизвестных источников и не игнорировать предупреждения безопасности при открытии таких файлов;
  • Если установлена операционная система Windows 7, не допускать запуск приложений с подписью «неизвестный источник».

На этом я завершаю вводную статью по макросам. В дальнейшем, я расскажу и покажу способы записи макросов в Excel. Постараюсь подбирать интересные и полезные примеры, а так же рассмотрим, каким потенциалом обладает Excel, если посмотреть на него глазами программиста.

P. S. Используя смекалку и фантазию на VBA можно написать простейшие и интересные игры. Если Вас заинтересовал такой вариант применения, то можете ознакомиться с играми, написанными для Excel ().

Макрос – это специальная программа, написанная на встроенном в Excel языке программирования Visual Basic for Application (VBA). Если вам часто приходится выполнять одни и те же операции в Эксель, то гораздо проще записать макрос или найти готовый код макроса, для выполнения определенных действий в Интернете.

Во втором случае, Вы найдете макрос в виде VBA-кода. В этом обычно и состоит вопрос: как добавить макрос в рабочий лист Excel, и как им пользоваться.

Как включить макросы в Excel

Чтобы Вы могли использовать макросы в работе, для начала их нужно включить. Кликаем по кнопочке «Файл» , в левом верхнем углу, и выбираем из списка «Параметры» .

В окне «Параметры Excel» перейдите на вкладку «Настройка ленты» , теперь в правой части окна поставьте галочку напротив пункта «Разработчик» и нажмите «ОК» .

Вверху на ленте появится новая вкладка «Разработчик» . На ней и будут находиться все необходимые команды для работы с макросами.

Теперь разрешим использование всех макросов. Снова открываем «Файл» – «Параметры» . Переходим на вкладку «Центр управления безопасностью» , и в правой части окна кликаем по кнопочке «Параметры центра управления безопасностью» .

Кликаем по вкладке «Параметры макросов» , выделяем маркером пункт «Включить все макросы» и жмем «ОК» . Теперь перезапустите Excel: закройте программу и запустите ее снова.

Как вставить макрос в Excel

Важно понимать, что макрос можно вставить в модуль, рабочий лист, рабочую книгу, или они могут являться частью пользовательской формы.

Вставим код макроса в модуль

Например, нужно объединить несколько ячеек в одну без потери данных. Как известно, Excel может объединять ячейки, сохраняя данные только из левой верхней ячейки. Чтобы сохранить все данные из объединяемых ячеек, будем использовать VBA-код.

Открываем редактор VBА: переходим на вкладку «Разработчик» и кликаем по кнопочке «Visual Basic» , также можно воспользоваться комбинацией «Alt+F11» .

С левой стороны редактора, в окне «Project» , выделяем мышкой рабочую книгу. Рабочая книга – это Ваш открытый документ Excel, в который нужно вставить макрос. У меня он называется «Книга1» .

Кликаем по выбранному пункту правой кнопкой мыши и выбираем из меню «Insert» – «Module» .

В окне «Project» появилась новая папка «Modules» , а в ней наш первый модуль с названием «Module1» .

Справа появится поле для ввода VBA-кода. С помощью комбинации «Ctrl+V» , вставляю в него код, который будет объединять несколько ячеек, без потери данных. Название макроса «MergeCell» .

Следите за тем, куда Вы вставляете код, это будет написано или в заголовке редактора, или в заголовке окна для вставки кода. Мы вставляем код в модуль, соответственно надпись – «Modul1(Code)» .

Сохраняем изменения, нажав комбинацию «Ctrl+S» . Если Вы используете Excel 2007 и выше, появится окно сохранения документа. В нем, в поле «Тип файла» , выберите из выпадающего списка «Книга Excel с поддержкой макросов» и нажмите «Сохранить» .

Вставим код макроса в рабочий лист

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

Открываем редактор VBA и в окошке «Project» выделяем нужный лист, если их в рабочей книге несколько, на котором должен работать макрос: «Лист1 (Лист1)» . Кликаем по нему два раза мышкой.

Справа появиться окошко для ввода кода. Обратите внимание, мы вставляем код в рабочий лист, соответственно в заголовке написано «Лист1(Code)» . Сохраните изменения в документе, как было описано выше.

Чтобы вставить код макроса в рабочую книгу , кликните два раза мышкой по пункту «ЭтаКнига» и вставьте код в появившуюся область.

Создадим пользовательскую функцию

Например, создадим функцию, которая будет рассчитывать НДС. В окне «Project» кликаем по рабочему листу правой кнопкой мыши и выбираем «Insert» – «Module» .

В папке «Modules» , появляется второй модуль с названием «Module2» . Прописываем VBA-код в соответствующее окно, и сохраняем его, нажав «Ctrl+S» . Называться функция будет «NDS» .

Как запустить макросы в Excel

Теперь рассмотрим, как выполняются все созданные ранее макросы в документе Excel.

Если макрос был вставлен в модуль , то он запускается пользователем. У меня такой макрос объединяет несколько ячеек в одну без потери данных.

Выделяем ячейки, которые нужно объединить, затем переходим на вкладку «Разработчик» и кликаем по кнопочке «Макросы» .

Откроется диалоговое окно «Макрос» . В списке, выбираем нужное имя макроса: «MergeCell» , и жмем «Выполнить» .

Макрос выполнился: нужные ячейки объединены, и текст в них сохранен.

Если макрос был вставлен в рабочий лист , то запускаться он будет автоматически, в зависимости от действий пользователя. У меня макрос добавляет значения из выпадающего списка в ячейки справа. В код вставлен то диапазон ячеек, в котором находятся выпадающие списки.

Теперь, когда я выбираю из выпадающего списка значение, оно вписывается в ячейки, расположенные справа от той ячейки, в которой находится сам список. Это свидетельствует о выполнении макроса.

Если макрос вставлен в рабочую книгу , он также выполняется автоматически, когда пользователь производит определенные действия над книгой: закрывает ее, или сохраняет.

Если Вы создали пользовательскую функцию , то вставлять в документ ее также надо как функцию. У меня такая функция должна рассчитывать НДС.

Например, применим ее к ячейке А1 , со значением «100» . Выделяем ячейку, в которую будет вписан результат. Затем переходим на вкладку «Формулы» и нажимаем кнопочку «Вставить функцию» .

Откроется окно «Мастер функций» . В поле «Категория» выбираем из выпадающего списка «Определенные пользователем» , в поле «Выберите функцию» выбираем название из списка: «NDS» . Нажимаем «ОК» .