1. 4. Четыре способа запуска макроса
Предположим, что макрос уже создан (в макрорекордере, как вы уже умеете, или средствами редактора Visual Basic, который вам предстоит освоить), и вы хотите или выполнить его один раз, или настроить возможность вызывать его постоянно. В нашем распоряжении — множество разных способов.
Самый простой, но и самый неудобный способ — воспользоваться окном Макрос , которое можно открыть при помощи меню Сервис | Макрос | Мак-
Из этого окна с помощью кнопок можно: Выполнить — запустить макрос на выполнение;
Отладка — открыть макрос в редакторе Visual Basic и начать его пошаговое выполнение;
Изменить — просто открыть макрос в редакторе Visual Basic;
Создать — необходимо будет ввести имя создаваемого макроса и в редакторе Visual Basic будет автоматически создана процедура с определенным вами именем;
Организатор — поменять описание и назначенное сочетание клавиш.
Каждый раз открывать это окно, находить нужный макрос (а их может быть, например, несколько десятков) и нажимать на кнопку Выполнить — не самый быстрый вариант. Вряд ли он очень понравится вашим пользователям, да и вам самим работать будет неудобно. Поэтому в вашем распоряжении несколько более удобных вариантов.
Если вы пользуетесь макросом постоянно, то можно использовать самый быстрый способ его вызова — клавиатурную комбинацию. Например, сейчас, когда я пишу эту книгу, я «положил» на клавиатурные комбинации простые макросы, которые вводят нужный мне текст. Если мне нужно набрать «Visual Basic», я нажимаю +, если Microsoft Office — +. На кла-
виши (правда, уже без макросов) у меня разложены и все стили — заголовки, маркированные списки и т. п. Очень удобно!
На практике клавиатурным комбинациям есть смысл назначать только те макросы, которые используются каждый день, например, ввод информации об ответственном исполнителе, о руководителе, которому пойдет документ на подпись, о полном названии вашей организации и т. п. Главное — чтобы вы использовали их постоянно, иначе вы просто забудете, какое сочетание клавиш за что отвечает.
Назначить сочетание клавиш макросу можно очень просто.
В Word это выглядит так: с помощью меню Сервис | Настройка открываем одноименное окно и переходим на вкладку Команды . Затем нажимаем на кнопку Клавиатура : откроется окно Настройка клавиатуры (рис. 1.3).
После того как нужное сочетание клавиш будет введено, нажмите кнопку
Следите за надписью Текущее назначение в этом диалоговом окне. Вполне возможно, что выбранному вами сочетанию клавиш уже назначен другой макрос или встроенная команда. Если вы проигнорируете это сообщение, то вы переназначите эту комбинацию вашему макросу. Но если пользователь привык использовать эти клавиши для других целей (+, + и т. п.), он может быть очень недоволен.
В Excel кнопки Клавиатура в окне Настройка (меню Сервис | Настройка )
Как мы уже говорили, клавиатурные комбинации есть смысл назначать только тем макросам, которыми вы пользуетесь каждый день. А что делать с полезными макросами, которые активно используются, к примеру, в отчетный
период, а потом опять ждут своего часа целый месяц? Подавляющее большинство пользователей за этот месяц забывает все назначенные клавиши и теряет те бумажки, на которых вы им записали эти клавиатурные комбинации. Да и сам разработчик (у меня это случается регулярно) вполне может забыть, что именно нужно нажимать для запуска старого макроса.
1. В меню Сервис выберите Настройка и перейдите на вкладку Панели ин-
3. После того как вы нажмете кнопки OK и Закрыть , будет создана новая пустая панель (которая будет находиться где-нибудь прямо поверх документа). Чтобы было удобней, перетащите ее к стандартным панелям инструментов, а потом вновь воспользуйтесь командой главного меню
Сервис | Настройка . В окне Настройка перейдите на вкладку Команды ,
в списке Категории выберите Макросы и просто перетащите на панель инструментов нужные макросы из списка Команды . Если на панель инструментов нужно поместить не один, а несколько макросов, то, возможно,
удобнее будет нажать кнопку Упорядочить команды и воспользоваться очень удобным диалоговым окном Изменение порядка команд
Удалить — удалить кнопку (также можно просто перетащить ее обратно с панели на окно Настройка );
Имя — ввести имя, т. е. надпись на кнопке или пункте меню. Для меню использование надписи удобно, для кнопки на панели инструментов — не очень, поскольку это занимает много места;
Копировать значок на кнопке и Вставить значок для кнопки — вос-
пользоваться понравившимся вам значком с другой кнопки;
Рис. 1.6. Контекстное меню для настройки кнопки на панели инструментов
Изменить значок на кнопке — откроется скромный редактор, в котором вы сможете сами нарисовать нужный значок;
Выбрать значок для кнопки — выбрать один из 42 стандартных значков. На самом деле только в Word значков, которые можно использовать, несколько тысяч;
Основной стиль — под этой надписью скрывается то, что нам обычно и нужно: чтобы кнопка была представлена только рисунком, безо всяких надписей;
Только текст (всегда) , Только текст (в меню) , Значок и текст — опреде-
ляют, что именно из набора надпись/рисунок будет показано на кнопке. Естественно, наиболее часто используемый вариант — Основной стиль ;
Начать группу — слева от кнопки появится вертикальная черта (разделитель);
Назначить гиперссылку — назначить ссылку на другое место в вашем документе или на страницу в Интернете.
Конечно же, мы могли обойтись и без создания своей панели управления, просто добавив новые кнопки в существующие (точно таким же перетаскиванием). Аналогичным образом мы можем преобразовать стандартные панели инструментов. Однако не забывайте, что все эти преобразования доступны только при открытом диалоговом окне Настройка .
1. Откройте то же диалоговое окно Настройка (меню Сервис | Настройка ).
3. Перетащите команду Новое меню из списка Команды того же окошка (рис. 1.7) в нужное место основного меню.
4. Далее точно так же при открытом окне Настройка щелкните правой кнопкой мыши по созданному вами пункту меню и переименуйте его (в нашем примере назовите его Макросы ).
Далее нужно нажать кнопку Упорядочить команды в окне Настройка .
В открывшемся диалоговом окне Изменение порядка команд (рис. 1.8) нужно в списке Строка меню выбрать Макросы и добавить в него нужные элементы (т. е. созданные вами макросы). Переименовать их можно при помощи кнопки Изменить выделенный объект прямо из этого окна.
В результате у вас может получиться очень милое меню, в котором пользователю запутаться будет трудно (рис. 1.9).
В Excel все очень похоже, но чуть-чуть по-другому. Если в Excel мы откроем окно Настройка (меню Сервис | Настройка ) и в списке Категории выберем
Макросы , то вместо списка макросов в списке Команды будет две возмож-
ности: Настраиваемая команда меню и Настраиваемая кнопка (рис. 1.10).
Настраиваемая кнопка — это готовая кнопка, которую можно перетащить на панель инструментов, а потом открыть для нее контекстное меню и воспользоваться командой Назначить макрос . Конечно же, для выбора иконки, формата отображения и т. п. можно воспользоваться и другими возможностями контекстного меню, которые доступны и в Word.
Для создания нового меню в Excel нужно точно так же создать новое меню, как и в Word, а потом нажать на кнопку Упорядочить команды и добавить в это меню несколько элементов Настраиваемая команда меню . Их реальная настройка (в том числе и назначение макросов) производится по нажатию кнопки Изменить выделенный объект .
Рис. 1.10. Создание кнопки для запуска макроса в Excel
[expert_bq его создания, каждая ячейка будет автоматизирована это означает, что любая ячейка пользовательского документа будет выполнять однотипное действие, которое укажет пользователь;. Если же вы хотите что-то уточнить, обращайтесь ко мне![/expert_bq] Будьте внимательны, не забудьте переключить данную опцию снова в автоматический режим в конце макроса. В противном случае, вам необходимо будет это сделать в самом Excel, перейдя по вкладке Формулы в группу Вычисление и выбрать Параметры вычислений –> Автоматический.
Как включить макросы в Excel, Word, Power Point, open office? |
После того как вы запустили и записали свой макрос, выполнив все нужные действия, запись можно прекратить командой «Остановить запись» и ваш макрос с помощью макрорекордера будет создан.
Автоматическое открытие определенной книги или шаблона при запуске Excel
Если вы всегда используете Excel для работы с одной и той же книгой или создания новых книг на основе того же шаблона. Вы можете настроить Excel на открытие книги или шаблона при его начале.
Чтобы открывать ту же книгу при каждом запуске Excel, в меню «Файл» выберите пункт > «Сохранить как > Компьютер», перейдите к папке XLSTART.
-
В Windows Vista и более поздних версиях путь к папке XLSTART обычно
Office 2013 C2R — C:\Users\(имя пользователя)\AppData\Microsoft\Excel\XLSTART
-
Если вы обновили систему до другой версии Windows, путь также может быть:
Office 2013 — C:\Program Files\Microsoft Office\Office 15\XLSTART
Примечание: Если книга или шаблон содержат макрос, который автоматически запускается при ее запуске, например Auto_Open. По умолчанию этот макрос также будет запускаться при запуске Excel.
Использование альтернативной папки для загрузки
Если вы хотите сохранить книгу запуска в другом месте, сделайте следующее:
- Нажмите кнопку «>» и выберите > «Дополнительные параметры Excel».
- В поле «Общий» в поле «При запуске» введите полный путь к папке, которую вы хотите использовать в качестве альтернативной папки запуска.
Примечание: Так как Excel попытается открыть все файлы в альтернативной папке запуска, убедитесь, что вы указали папку, которая содержит только файлы, которые Excel может открыть. Если книга с одинаковым именем находится как в папке XLSTART, так и в альтернативной папке запуска, откроется файл в папке XLSTART.
Остановка открытия определенной книги при запуске Excel
Чтобы книга не запускался автоматически при запуске Excel, сделайте следующее:
- Перейдите к папке, в которой была сохранена книга (папка XLSTART или другое расположение), выберите книгу и нажмите кнопку «Удалить».
Автоматическое открытие шаблона книги при запуске Excel
Вы можете сохранить параметры книги, которые часто используются в шаблоне книги, а затем автоматически открывать его при каждом запуске Excel.
Чтобы использовать шаблон книги, создайте книгу, которая содержит листы, текст по умолчанию (например, заглавные колонок страниц и строки), формулы, макросы, стили и другое форматирование, которые будут применяться при каждом использовании шаблона.
Параметры, которые можно сохранить в шаблоне:
- Форматы ячеок и листов.
- Форматы страниц и параметры области печати для каждого листа.
- Стили ячеок.
- Количество и тип листов в книге.
- Защищенные и скрытые области книги. Чтобы предотвратить изменение ячеек книги, можно скрыть листы, столбцы и строки.
- Текст, который нужно повторить, например подписи страниц, столбцов и строк.
- Данные, рисунки, формулы, диаграммы и другие сведения.
- Параметры проверки данных.
- Макрос, гиперссылки и ActiveX в формах.
- Параметры вычислений книги и параметры просмотра окна.
Чтобы создать шаблон, сделайте следующее:
- Нажмите кнопку «> сохранить как».
- В поле «Тип сохранения» выберите «Шаблон».
- В окне «Сохранение» выберите папку, в которой вы хотите сохранить шаблон.
- В поле «Имя файла» сделайте одно из следующего:
- Чтобы создать шаблон книги по умолчанию, введите «Книга».
- Чтобы создать шаблон листа по умолчанию, введите «Лист».
- Чтобы создать настраиваемый шаблон книги или книги, введите нужное имя.
- Нажмите кнопку Сохранить.
- Нажмите кнопку «> закрыть».
Предотвращение запуска автоматических макроса при запуске Excel
Автоматические макрос (например, Auto_Open), записанный в книге, открытой при запуске Excel, запустится сразу после ее открытия.
- Чтобы предотвратить запуск макроса, при запуске Excel удерживайте на клавише SHIFT.
Как автоматически при открытии книги запустить макрос в excel?
Правда это не сработает в том случае, если у пользователя в настройках включена блокировка макросов (это включено по умолчанию). Нужно еще помочь ему отключить эту опцию. На самом деле более интересный вопроса как это сделать простым программным методом. Ума не приложу. Наверное через реестр или может есть какая-то встроенная VBA функция для этого.
Код для автозагрузки при открытии Word:
Private Sub Document_Open() 'Вместо EntryPoint вставьте название Вашего главного метода' Call EntryPoint End Sub
Отслеживать
ответ дан 22 авг 2012 в 16:26
7,786 1 1 золотой знак 28 28 серебряных знаков 49 49 бронзовых знаков
Добавлю к ответу igumnov.
Код необходимо вставить в модуль ЭтаКнига (Для Word — ThisDocument)
Alt+F11 — открываем проект VBA. Слева — окно проекта, модуль находится там, в папке Microsoft Excel Objects
Исполняемый макрос записывается в общий модуль (в папке Modules).
Если модуля нет, его нужно создать: в редакторе VBA вкладка Insert-Module
Если окна проекта нет, открыть — меню Viev-Project Explorer (Ctrl+R)
Если макросы запрещены, никакими внутренними встроенными средствами поменять уровень безопасности нельзя. В VBA тоже нет такой команды. Это противоречило бы логике защиты: запрещаем макросы, но тем же макросом их разрешаем.
Поменять уровень безопасности вручную:
Для Excel-2003: меню Сервис-Макрос-Безопасность
Для Excel-2010 глубже: закладка ленты Файл-Параметры-Центр_управления_безопасностью-Параметры_центра_управления_безопасностью-Параметры_макросов
Программно менять уровень безопасности можно, но перед этим нужно установить на компьютер скрипт, который «умеет» менять уровень безопасности. Такие программы есть в свободном доступе.
Excel works!

Запуск макроса в Excel. Как запустить макрос при открытии файла?
Август 18, 2017 / Написал Izotov / No Comments
Если вы часто пользуетесь макросами в MS Excel, то уверен, у вас не раз возникал вопрос: «Как быстро запустить написанный макрос?». Можно привязать горячую клавишу, например. Так же мы расскажем, как сделать так, чтобы макрос был доступен из любого файла Excel и можно было сделать быстрый запуск макроса в Excel.
Если вы не знаете о чем идет речь, то советую прочитать специальную статью . Если коротко, макрос — это список действий, записанных при помощи «языка» VBA. Очень удобно записать такую последовательность, если вы часто выполняете одни и те же операции (их можно записать специальным инструментом — макрорекордером ). Макрос будет выполнять их при нажатии одной кнопки .
Где посмотреть полившийся макрос и запустить его?
Самый удобный способ работы с макросами и связанными инструментами — вывести вкладку Разработчик на панель инструментов

Включается он несложно — заходим в левую, верхнюю кнопку Параметры Excel — раздел Основные — в правом окне ставим галочку Показывать вкладку Разработчик на ленте
Как мы видим, здесь большой выбор инструментов, от возможности зайти в Visual Basic до вставки объекта, например, кнопки.
Запуск макроса можно осуществить нажатием второй кнопки слева Макросы.
Появится окно для выбора макроса

Выбираем нужный — жмем выполнить.
Запуск макроса в Excel. Горячие клавиши
Открытие окна выбора макроса можно осуществить через горячую клавишу Alt + F8 . А зайти в окно редактирования макроса сочетанием Alt + F11.
Причем если в окне выбора выделить нужный макрос и нажать Параметры, то к макросу можно привязать сочетание клавиш.

В данным случае ctrl + Ё.
Автозапуск макроса при открытии книги
Зайдите в окно редактирования макроса Alt + F11 или нажмите кнопку Просмотр кода на панели Разработчик.
У вас откроется VBA. Ваш макрос (особенно записанный макрорекордером) будет храниться в отдельном отделе модулей в левой панели.

Для того, чтобы макрос запускался при открытии книги, его надо перенести в раздел эта книга.
Копируйте тело макроса из правого окна (между Sub и End Sub)

Выберите в левой панели ЭтаКнига (двойным левым кликом).

В верхних панелях выбираем Workbook и признак включения макроса Open (открытие книги получается).
Копированный текст макроса из модуля вставляем между Private Sub и End Sub. Сохраняем. Закрываем VBA.
Готово! Запуск макроса будет происходить при открытии книги.
Не забудьте сохранить книгу с поддержкой макросов ( xlsm или xlsb ).
Дополнительные возможности запуска макроса при действии с книгой
Как вы могли увидеть при выборе Workbook в правом окне выбора доступно множество вариантов. Ниже команды, которые запускают макрос при действии с книгой:
- Activate — при активации книги (при переходе из другого окна в эту книгу);
- Deactivate — при переходе в другую книгу;
- BeforeClose — перед закрытием книги;
- BeforePrint — перед печатью книги;
- BeforeSave — при сохранении книги;
- NewSheet — при создании нового листа книги.
Дополнительные возможности запуска макроса при действии с листом
По аналогии с предыдущим пунктом, такие же действия можно привязать к определенному листу. Ниже команды, которые запускают макрос при действии с листом:
- SheetActivate — при активации листа книги;
- SheetDeactivate — при переходе на другой лист книги;
- SheetCalculate — при пересчете формул на листе;
- SheetBeforeDoubleClick — перед двойным кликом мыши;
- SheetBeforeRightClick — перед кликом правой кнопкой мыши;
- SheetChange — при изменение на листе
Если необходимо запустить макрос при изменении в ячейке — подробная инструкция есть в этой статье .
Готов ответить на вопросы в комментариях!
Похожие статьи
- 14.12.2015Как сделать кнопку в Excel?Posted in Макросы
- 15.05.2018Как запустить макрос при изменении ячейки?Posted in Работа с ячейками, Макросы
- 01.06.2018Полезные макросы Excel. Простые возможности VBA, которые я часто используюPosted in Макросы
- 07.04.2015Как написать макрос в Excel?Posted in Макросы
- 25.10.2016Альтернатива Excel. Чем его заменить?Posted in Excel, Онлайн
- 10.01.2017Распознавание голоса в MS Excel и WordPosted in Excel
- 05.07.2015Формат по образцу для пакета MS OfficePosted in Оформление
- 27.11.2015Как удалить символ в ячейке Excel?Posted in Работа с текстом
