Как объединить макросы в Excel
![](http://officeassist.ru/wp-content/uploads/22728/tmp-f486d793-098d-46e6-9264-951c14ae9064.jpg)
Макрос — это специальная программа, написанная на встроенном в Excel языке программирования Visual Basic for Application (VBA). Если вам часто приходится выполнять одни и те же операции в Эксель, то гораздо проще записать макрос или найти готовый код макроса, для выполнения определенных действий в Интернете.
Во втором случае, Вы найдете макрос в виде VBA-кода. В этом обычно и состоит вопрос: как добавить макрос в рабочий лист Excel, и как им пользоваться.
Как включить макросы в Excel
Чтобы Вы могли использовать макросы в работе, для начала их нужно включить. Кликаем по кнопочке «Файл», в левом верхнем углу, и выбираем из списка «Параметры».
![Работа с макросами в Excel](http://officeassist.ru/wp-content/uploads/22728/tmp-f486d793-098d-46e6-9264-951c14ae9064.jpg)
В окне «Параметры Excel» перейдите на вкладку «Настройка ленты», теперь в правой части окна поставьте галочку напротив пункта «Разработчик» и нажмите «ОК».
![](http://officeassist.ru/wp-content/uploads/22728/tmp-63dac0fb-2e60-42b3-8eb0-7fde801e9447.jpg)
Вверху на ленте появится новая вкладка «Разработчик». На ней и будут находиться все необходимые команды для работы с макросами.
Теперь разрешим использование всех макросов. Снова открываем «Файл» — «Параметры». Переходим на вкладку «Центр управления безопасностью», и в правой части окна кликаем по кнопочке «Параметры центра управления безопасностью».
![](http://officeassist.ru/wp-content/uploads/22728/tmp-c43027f1-eb1c-4e61-8d9a-ee7f10ecefd3.jpg)
Кликаем по вкладке «Параметры макросов», выделяем маркером пункт «Включить все макросы» и жмем «ОК». Теперь перезапустите Excel: закройте программу и запустите ее снова.
![](http://officeassist.ru/wp-content/uploads/22728/tmp-845cd87f-b4bd-4757-b47f-b9301871ab11.jpg)
Как вставить макрос в Excel
Важно понимать, что макрос можно вставить в модуль, рабочий лист, рабочую книгу, или они могут являться частью пользовательской формы.
Вставим код макроса в модуль
Например, нужно объединить несколько ячеек в одну без потери данных. Как известно, Excel может объединять ячейки, сохраняя данные только из левой верхней ячейки. Чтобы сохранить все данные из объединяемых ячеек, будем использовать VBA-код.
Открываем редактор VBА: переходим на вкладку «Разработчик» и кликаем по кнопочке «Visual Basic», также можно воспользоваться комбинацией «Alt+F11».
![](http://officeassist.ru/wp-content/uploads/22728/tmp-02df2bde-42a3-4818-a650-be68059d0aa7.jpg)
С левой стороны редактора, в окне «Project», выделяем мышкой рабочую книгу. Рабочая книга — это Ваш открытый документ Excel, в который нужно вставить макрос. У меня он называется «Книга1».
Кликаем по выбранному пункту правой кнопкой мыши и выбираем из меню «Insert» — «Module».
![](http://officeassist.ru/wp-content/uploads/22728/tmp-84ad2084-248a-457f-8021-bc15bcf39d0e.jpg)
В окне «Project» появилась новая папка «Modules», а в ней наш первый модуль с названием «Module1».
Справа появится поле для ввода VBA-кода. С помощью комбинации «Ctrl+V», вставляю в него код, который будет объединять несколько ячеек, без потери данных. Название макроса «MergeCell».
Следите за тем, куда Вы вставляете код, это будет написано или в заголовке редактора, или в заголовке окна для вставки кода. Мы вставляем код в модуль, соответственно надпись — «Modul1(Code)».
![](http://officeassist.ru/wp-content/uploads/22728/tmp-f8590610-8172-4d4a-a897-74afa43e0f99.jpg)
Сохраняем изменения, нажав комбинацию «Ctrl+S». Если Вы используете Excel 2007 и выше, появится окно сохранения документа. В нем, в поле «Тип файла», выберите из выпадающего списка «Книга Excel с поддержкой макросов» и нажмите «Сохранить».
![](http://officeassist.ru/wp-content/uploads/22728/tmp-03a43236-94fc-45ee-bec3-2b68413651af.jpg)
Вставим код макроса в рабочий лист
Например, у нас есть выпадающий список. Нужно сделать так, чтобы при выборе нескольких значений из него, они появлялись в ячейках справа.
Открываем редактор VBA и в окошке «Project» выделяем нужный лист, если их в рабочей книге несколько, на котором должен работать макрос: «Лист1 (Лист1)». Кликаем по нему два раза мышкой.
Справа появиться окошко для ввода кода. Обратите внимание, мы вставляем код в рабочий лист, соответственно в заголовке написано «Лист1(Code)». Сохраните изменения в документе, как было описано выше.
![](http://officeassist.ru/wp-content/uploads/22728/tmp-2a96ae88-701c-482b-981f-547bb8a5338a.jpg)
Чтобы вставить код макроса в рабочую книгу, кликните два раза мышкой по пункту «ЭтаКнига» и вставьте код в появившуюся область.
![](http://officeassist.ru/wp-content/uploads/22728/tmp-3dac5a6a-7e69-4afe-8104-4f11de49a53b.jpg)
Создадим пользовательскую функцию
Например, создадим функцию, которая будет рассчитывать НДС. В окне «Project» кликаем по рабочему листу правой кнопкой мыши и выбираем «Insert» — «Module».
![](http://officeassist.ru/wp-content/uploads/22728/tmp-231c0078-874c-418a-b21a-7810550b6a3f.jpg)
В папке «Modules», появляется второй модуль с названием «Module2». Прописываем VBA-код в соответствующее окно, и сохраняем его, нажав «Ctrl+S». Называться функция будет «NDS».
![](http://officeassist.ru/wp-content/uploads/22728/tmp-6afb7110-a0e3-43aa-b0a8-d441931e5a6d.jpg)
Как запустить макросы в Excel
Теперь рассмотрим, как выполняются все созданные ранее макросы в документе Excel.
Если макрос был вставлен в модуль, то он запускается пользователем. У меня такой макрос объединяет несколько ячеек в одну без потери данных.
Выделяем ячейки, которые нужно объединить, затем переходим на вкладку «Разработчик» и кликаем по кнопочке «Макросы».
![](http://officeassist.ru/wp-content/uploads/22728/tmp-0c1653e7-903d-49bb-b191-f384ce796130.jpg)
Откроется диалоговое окно «Макрос». В списке, выбираем нужное имя макроса: «MergeCell», и жмем «Выполнить».
![](http://officeassist.ru/wp-content/uploads/22728/tmp-c91a196f-5203-4f9b-8c90-70647baf69c5.jpg)
Макрос выполнился: нужные ячейки объединены, и текст в них сохранен.
Если макрос был вставлен в рабочий лист, то запускаться он будет автоматически, в зависимости от действий пользователя. У меня макрос добавляет значения из выпадающего списка в ячейки справа. В код вставлен то диапазон ячеек, в котором находятся выпадающие списки.
![](http://officeassist.ru/wp-content/uploads/22728/tmp-46f75230-4025-4178-9f3d-993166c5a623.jpg)
![](http://officeassist.ru/wp-content/uploads/22728/tmp-6f9904b5-1a45-4407-b7ca-b73f7a438b4b.jpg)
Теперь, когда я выбираю из выпадающего списка значение, оно вписывается в ячейки, расположенные справа от той ячейки, в которой находится сам список. Это свидетельствует о выполнении макроса.
![](http://officeassist.ru/wp-content/uploads/22728/tmp-22e31b1d-1511-4a18-89eb-8d0f8a70d566.jpg)
Если макрос вставлен в рабочую книгу, он также выполняется автоматически, когда пользователь производит определенные действия над книгой: закрывает ее, или сохраняет.
Если Вы создали пользовательскую функцию, то вставлять в документ ее также надо как функцию. У меня такая функция должна рассчитывать НДС.
Например, применим ее к ячейке А1, со значением «100». Выделяем ячейку, в которую будет вписан результат. Затем переходим на вкладку «Формулы» и нажимаем кнопочку «Вставить функцию».
![](http://officeassist.ru/wp-content/uploads/22728/tmp-6216006c-270a-4a41-820b-e82863109e9a.jpg)
Откроется окно «Мастер функций». В поле «Категория» выбираем из выпадающего списка «Определенные пользователем», в поле «Выберите функцию» выбираем название из списка: «NDS». Нажимаем «ОК».
![](http://officeassist.ru/wp-content/uploads/22728/tmp-0613c044-0e70-4c7a-b7b7-70afbe5e15bd.jpg)
Затем выделяю ячейку, для которой нужно посчитать НДС, и нажимаю «ОК».
![](http://officeassist.ru/wp-content/uploads/22728/tmp-6bfd60ee-b130-46ac-b88a-78342014693e.jpg)
Включить макросы в документе Excel 2010 совершенно не сложно. Надеюсь, Вы также разобрались, как вставить макрос в Excel, а затем выполнить его.
Поделитесь статьёй с друзьями: