Как быстро открыть диалоговое окно макрос

Введение в язык VBA Как запустить макрос: меню и командная строка

1.4 Как запустить макрос: меню и командная строка

Кнопки и меню для макросов в приложениях Office, другие способы запуска макросов

Предположим, что макрос уже создан (в макрорекордере, как мы уже умеем, или средствами редактора Visual Basic, который нам предстоит освоить) и вы хотите или выполнить его один раз или настроить себе возможность вызывать его постоянно. В нашем распоряжении — множество разных способов.

Самый простой, но и самый неудобный способ — воспользоваться окном Макрос, которое можно открыть при помощи меню Сервис -> Макрос -> Макросы (см. рис. 1.1).

Рис. 1.1 Диалоговое окно Макросы

Из этого окна можно:

Выполнить — запустить макрос на выполнение;

Войти — открыть макрос в редакторе Visual Basic начать его пошаговое выполнение;

Изменить — просто открыть макрос в редакторе Visual Basic;

Создать — необходимо будет ввести имя создаваемого макроса и в редакторе Visual Basic будет автоматически создана процедура с определенным вами именем;

Удалить;

Параметры — поменять описание и назначенное сочетание клавиш.

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

Если вы пользуетесь макросом постоянно, то можно использовать самый быстрый способ его вызова — клавиатурную комбинацию. Например, сейчас, когда я пишу эту книгу, я «положил» на клавиатурные комбинации простенькие макросы, которые вводят нужный мне текст. Если мне нужно набрать «Visual Basic», я набираю + , если Microsoft Office — + и т.п. На клавиши (правда, уже без макросов) у меня разложены и все стили — заголовки, маркированные списки и т.п. Очень удобно!

На работе клавиатурным комбинациям, к примеру, ввод информации о ответственном исполнителе, о руководителе, которому пойдет документ на подпись, о полном названии вашей организации и т.п. Главное — чтобы вы использовали их постоянно, иначе вы просто забудете, какое сочетание клавиш за что отвечает.

Назначить сочетание клавиш макросу можно очень просто.

В Word это выглядит так: в меню Сервис выбираем Настройка и переходим на вкладку Команды. Затем нажимаем на кнопку Клавиатура: откроется окно Настройка клавиатуры (см. рис. 1.2)

Рис. 1.2 Окно настройки клавиатурных комбинаций

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

Внимание! Следите за надписью Текущее назначение в этом диалоговом окне. Вполне возможно, что выбранному вами сочетанию клавиш уже назначен другой макрос или встроенная команда. Если вы проигнорируете это сообщение, то вы переназначите эту комбинацию вашему макросу. Но если пользователь уже привык использовать эту комбинацию для других целей ( + , + ) и т.п., он может быть очень недоволен.

В Excel кнопки Клавиатура в окне Настройка (меню Сервис -> Настройка) вы не найдете. Там придется назначать клавиатурные комбинации по другому: в меню Сервис выбрать Макрос -> Макросы, выбрать нужный макрос в списке и нажать на кнопку Параметры. Откроется окно Параметры макроса (см. рис. 1.3), в котором вы сможете выбрать нужную клавиатурную комбинацию (только в сочетании с клавишей ) и ввести описание макроса. На практике любое сочетание клавиш можно назначить макросу и в Excel, но простыми способами это сделать нельзя — придется писать программный код, в котором будут перехватываться события приложения.

Читайте также:  Дизайн 20 метровой комнаты с двумя окнами

Рис. 1.3 Диалоговое окно Параметры макроса

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

Лучший выход в такой ситуации — назначить макрос пункту меню или кнопке на панели управления. Пожалуй, назначение пункту меню даже лучше — больше возможностей упорядочить макросы и есть возможность использовать понятные названия. Однако нажимать на кнопки на панели инструментов быстрее — так что выбирайте сами, что вам больше нравится. Создание и настройка новой панели инструментов для вызова макросов в Word может выглядеть так:

  • В меню Сервис выбираем Настройка и переходим на вкладку Панелиинструментов.
  • Нажимаем на кнопку Создать и вводим название панели (например, Макросы) и выбираем тот документ, в котором она будет создана. Если мы выберем normal.dot, то меню будет доступно для всех документов Word на этом компьютере (что чаще всего и надо). Другой вариант — создать панель управления в том же документе Word, который у вас открыт. В этом случае меню будет доступно только из этого файла.

После того, как мы нажмем на кнопку OK и Закрыть, у нас будет создано новое пустое меню (которое будет находится где-нибудь прямо поверх документа). Чтобы было удобней, нужно перетащить его к стандартным панелям инструментов, а потом вновь воспользоваться командой главного меню Сервис -> Настройка. В нем нужно перейти на вкладку Команды, в списке Категории выбрать Макросы и просто перетащить на панель инструментов нужные макросы из списка Команды. Если на панель инструментов нужно поместить не один, а несколько макросов, то, возможно, удобнее будет нажать на кнопку Упорядочить команды и воспользоваться очень удобным диалоговым окном (см. рис. 1.4):

Рис. 1.4 Диалоговое окно Изменение порядка команд

Мы добавили нужные кнопки на панели инструментов, но пока они выглядят не очень интересно (например, Normal. NewMacros. Recordset). Вряд ли такое название что-то скажет пользователю. Поэтому следующее действие — настройка кнопок. Для при открытом окне Настройка (это условие обязательно!) просто щелкаем правой кнопкой мыши по кнопке на панели инструментов, которую нам надо настроить. Откроется специальное контекстное меню (см. рис. 1.5).

Рис. 1.5 Контекстное меню для настройки кнопки на панели инструментов

Что можно сделать из этого меню:

Удалить — просто удалить кнопку (для этого же можно просто перетащить ее обратно прямо на окно Настройка).

Имя — возможность ввести имя, то есть надпись на кнопке или пункте меню. Для меню использование надписи удобно, для кнопки на панели инструментов — не очень, поскольку занимает очень много места.

Копировать значок на кнопке и Вставить значок для кнопки — возможность воспользоваться понравившимся вам значком с другой кнопки;

Изменить значок на кнопке — откроется скромный редактор, в котором вы сможете сами нарисовать нужный значок.

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

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

Читайте также:  Узлы установки дверей окон

Только текст (всегда), Только текст (меню), Значок и текст — определяют, что именно из набора надпись/рисунок будет показано на кнопке. Наиболее часто используемый вариант, конечно — Основной стиль.

Начать группу — про эту возможность мы поговорим подробнее в главе про создание панелей инструментов управления и меню программным способом;

Назначить гиперссылку — комментариев, видимо, не требует.

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

Создание меню производится немного по другому:

  • Нужно открыть то же диалоговое окно Настройка (меню Сервис ->Настройка).

В списке Категории выбрать Новоеменю.

Перетащить команду Новоеменю из списка Команды того же окошка в нужное место основного меню (см. рис. 1.6).

Рис. 1.6 Диалоговое окно Настройка

Далее точно так же при открытом окне Настройка щелкаем правой кнопкой мыши по созданному нами пункту меню и переименовываем его (в нашем примере мы назовем его Макросы.

Далее нужно нажать на кнопку Упорядочить команды. В открывшемся диалоговом окне Изменение порядка команд (см. рис. 1.7) нужно в списке Строка меню выбрать Макросы и добавить в него нужные элементы (то есть созданные вами макросы). Переименовать их можно при помощи кнопки Изменить выделенный объект прямо из этого окна.

Рис. 1.7 Окно Изменение порядка команд

В результате у нас может получиться очень милое меню, в котором пользователю запутаться будет трудно (см. рис. 1.8).

Рис. 1.8 Меню для запуска макросов

В Excel все очень похоже, но чуть-чуть по другому. Если в Excel мы откроем окно настройка (меню Сервис -> Настройка) и в списке Категории выберем Макросы, то вместо списка макросов в списке Команды будет две возможности: Настраиваемая команда меню и Настраиваемая кнопка (см. рис. 1.9).

Рис. 1.9 Создание кнопки для запуска макроса в Excel

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

Для создания нового меню в Excel нужно точно так же создать новое меню, как в Word, а потом нажать на кнопку упорядочить команды и добавить в этом меню несколько элементов Настраиваемая команда меню. Их реальная настройка (в том числе и назначение макросов) производится по нажатию на кнопку Изменить выделенный объект.

В подавляющем большинстве остальных приложений Office ( PowerPoint, Project, Outlook и т.п.) работа с макросами производится так же, как и в Word.

Есть еще один способ предоставить пользователю возможность запускать макросы — самый функциональный, но и самый трудоемкий: создать специальную графическую форму, на которую можно поместить, например, ниспадающий список макросов. При применении этого способа можно предусмотреть дополнительные элементы управления для ввода параметров, которые макросы смогут «подхватывать» во время выполнения (напрямую параметры макросам передаваться не могут, поскольку макрос — это процедура, не принимающая параметров). Однако применение этого способа потребует написания программного кода. Как работать с формами и элементами управления на них — будет рассказано в главе 5 этой книги. После этого создание такой формы не составит никакого труда.

Есть еще одна специальная возможность для запуска макросов: сделать так, чтобы они запускались при возникновении специального события. Таким событием может стать, например, внесение изменений на лист Excel, открытие книги Excel или документа Word и т.п. Подробнее про работу с событиями будет рассказано в соответствующей главе. Однако можно обеспечить автоматический запуск макроса и без программирования: достаточно просто назначить ему специальное имя. Например, для Word список таких специальных названий представлен в Табл. 1.1.

Читайте также:  Как активировать окно winapi

Табл. 1.1 Специальные названия макросов для Word

Источник

Как запустить макрос?

В приложениях Microsoft Word и Microsoft Excel макросы запускаются одинаково. Существует несколько способов, которыми можно запустить макрос в этих приложениях, но для того чтобы этими способами воспользоваться необходимо знать имя макроса и место, в котором он сохранен. Большая часть рассмотренных ниже способов запуска макросов может быть использована и в других приложениях, таких как Outlook, PowerPoint и др.

Как запустить макрос из редактора Visual Basic ?

Для того чтобы запустить макрос, необходимо открыть приложение, для которого он написан. Из открытого приложения перейти в редактор VisualBasic сочетанием клавиш Alt+F11 (Alt с левой стороны клавиатуры). В обозревателе проектов (окно ProjectExplorer по умолчанию находится в левом верхнем углу редактора) найти проект, а в проекте модуль, в котором записан макрос. Двойной клик левой кнопкой мыши по выбранному модулю отображает все макросы (процедуры, функции), которые в нем хранятся. Остается отыскать макрос с нужным именем, установить курсор в любое место между ключевыми словами Sub и End Sub, после чего нажать кнопку Run Sub в меню редактора либо кнопку F5 на клавиатуре.

Как запустить макрос из приложения?

Чтобы запустить макрос из приложения, для которого он написан, прежде всего, необходимо открыть приложение, затем нажать сочетание клавиш Alt+F8 на клавиатуре, в диалоговом окне «Макрос» отыскать нужный макрос по имени, навести на него курсор и нажать кнопку «Выполнить», либо дважды кликнуть по имени левой кнопкой мыши.

Как запустить макрос горячими клавишами?

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

Microsoft Excel

Вызывается диалоговое окно «Макрос» сочетанием клавиш Alt+F8, выделяется имя макроса, нажимается кнопка «Параметры» и задается сочетание клавиш.

Microsoft Word

На ленте выбирается меню «Файл»/«Параметры»/«Настройка ленты», в поле «Сочетание клавиш» нажимается кнопка «Настройки», после чего любому макросу можно изменить текущее сочетание либо присвоить новое.

Как запустить макрос из панели быстрого доступа?

В версиях Microsoft Office 2007 и выше есть так называемая панель быстрого доступа, которая может располагаться как над, так и под лентой. В настройках панели быстрого доступа есть пункт меню «Другие команды». Если в поле «Выбрать команды из:» из выпадающего списка выбрать пункт «Макросы», навести курсор на имя какого-либо макроса и нажать кнопку «Добавить», в панели быстрого доступа появится иконка, нажатие на которую будет запускать макрос. В окне настроек панели быстрого доступа можно изменить отображаемое имя макроса, которое всплывает при наведении курсора мыши на иконку, а также можно изменить изображение на кнопке, выбрав одну из предложенных картинок. И в Word и в Excel эта возможность реализована одинаково.

Как запустить макрос из другого макроса?

Предположим, что существует макрос (процедура) с именем Name1, который необходимо запустить из другого макроса (процедуры) с именем Test.

Макросы находятся в одном модуле

В программном коде макроса Test необходимо вписать имя макроса (процедуры) который должен быть запущен, то есть Name1

Макросы находятся в одном проекте, но в разных модулях

Если макрос Test расположен в модуле Module1, а макрос Name1 находится в модуле Module2, но в пределах одного проекта, то в программном коде необходимо вписать имя модуля и сразу за ним поставить точку, после этого вписать имя макроса (процедуры) вручную либо выбрать из списка всплывающей подсказки, чтобы получилось Module2.Name1

Источник

Поделиться с друзьями