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

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

Самый простой, но и самый неудобный способ — воспользоваться окном Макрос , которое можно открыть при помощи меню Сервис | Макрос | Мак- росы (рис. 1.2). Рис. 1.2. Диалоговое окно Макросы Из этого окна с помощью кнопок можно: Выполнить — запустить макрос на выполнение; Отладка — открыть макрос в редакторе Visual Basic и начать его пошаговое выполнение; Изменить — просто открыть макрос в редакторе Visual Basic; Создать — необходимо будет ввести имя создаваемого макроса и в редакторе Visual Basic будет автоматически создана процедура с определенным вами именем;

20 Глава 1

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

БЕСПЛАТНАЯ ПРОГА для ЗАПУСКА МАКРОСОВ | Seven Helper | Rust, Rainbow six siege, Калибр, PUBG…

Поэтому в вашем распоряжении несколько более удобных вариантов. Если вы пользуетесь макросом постоянно, то можно использовать самый быстрый способ его вызова — клавиатурную комбинацию. Например, сейчас, когда я пишу эту книгу, я «положил» на клавиатурные комбинации простые макросы, которые вводят нужный мне текст.

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

Назначить сочетание клавиш макросу можно очень просто. В Word это выглядит так: с помощью меню Сервис | Настройка открываем одноименное окно и переходим на вкладку Команды . Затем нажимаем на кнопку Клавиатура : откроется окно Настройка клавиатуры (рис. 1.3).

В списке Категории нужно выбрать Макросы , в списке Команды — созданный вами макрос, установить указатель ввода в поле Новое сочетание клавиш и нажать требуемое сочетание клавиш. Помимо обычных сочетаний типа +, + и т. п., можно использовать и более сложные. Например, вы вставляете при помощи макросов два варианта названия вашей организации: полное и краткое. Этим макросам можно назначить клавиатурные комбинации вида +, и +, . Это значит, что если вы вначале нажмете вместе клавиши +, а затем , то соответствующий макрос будет выполнен. Вводить такое сочетание клавиш в поле Новое сочетание клавиш нужно точно так же, как вы будете его применять.
После того как нужное сочетание клавиш будет введено, нажмите кнопку Назначить , а потом Закрыть .

говорящая зарядка (создание макроса подробно)

Основыпрограммирования в Microsoft Office 21

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

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

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

22 Глава 1

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

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

Создание и настройка новой панели инструментов для вызова макросов в Word может выглядеть так: 1. В меню Сервис выберите Настройка и перейдите на вкладку Панели ин- струментов . 2. Нажмите кнопку Создать , введите название панели (например, Мои_макросы ) и выберите тот документ, в котором она будет создана. Если вы выберете Normal.dot, то панель будет доступна для всех документов Word на этом компьютере (что чаще всего и необходимо).

Читайте также:
Компоновщик это средство сборки программ

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

Основыпрограммирования в Microsoft Office 23

удобнее будет нажать кнопку Упорядочить команды и воспользоваться очень удобным диалоговым окном Изменение порядка команд (рис. 1.5). Рис. 1.5. Диалоговое окно Изменение порядка команд Мы добавили нужные кнопки на панели инструментов, но пока они выглядят не очень интересно (например, Normal.NewMacros.QueryTable ). Вряд ли такое название что-то скажет пользователю.

Поэтому следующее действие — настройка кнопок. Для этого при открытом окне Настройка (это условие обязательно!) просто щелкните правой кнопкой мыши по кнопке панели инструментов, которую надо настроить. Откроется специальное контекстное меню (рис. 1.6). С помощью этого меню можно: Удалить — удалить кнопку (также можно просто перетащить ее обратно с панели на окно Настройка ); Имя — ввести имя, т. е. надпись на кнопке или пункте меню. Для меню использование надписи удобно, для кнопки на панели инструментов — не очень, поскольку это занимает много места; Копировать значок на кнопке и Вставить значок для кнопки — вос- пользоваться понравившимся вам значком с другой кнопки;

24 Глава 1

Рис. 1.6. Контекстное меню для настройки кнопки на панели инструментов Изменить значок на кнопке — откроется скромный редактор, в котором вы сможете сами нарисовать нужный значок; Выбрать значок для кнопки — выбрать один из 42 стандартных значков.

На самом деле только в Word значков, которые можно использовать, несколько тысяч; Основной стиль — под этой надписью скрывается то, что нам обычно и нужно: чтобы кнопка была представлена только рисунком, безо всяких надписей; Только текст (всегда) , Только текст (в меню) , Значок и текст — опреде- ляют, что именно из набора надпись/рисунок будет показано на кнопке. Естественно, наиболее часто используемый вариант — Основной стиль ; Начать группу — слева от кнопки появится вертикальная черта (разделитель); Назначить гиперссылку — назначить ссылку на другое место в вашем документе или на страницу в Интернете. Конечно же, мы могли обойтись и без создания своей панели управления, просто добавив новые кнопки в существующие (точно таким же перетаскиванием). Аналогичным образом мы можем преобразовать стандартные панели инструментов. Однако не забывайте, что все эти преобразования доступны только при открытом диалоговом окне Настройка .

Основыпрограммирования в Microsoft Office 25

Создание меню производится немного по-другому: 1. Откройте то же диалоговое окно Настройка (меню Сервис | Настройка ). 2. В списке Категории выберите Новое меню . 3. Перетащите команду Новое меню из списка Команды того же окошка (рис. 1.7) в нужное место основного меню. Рис. 1.7.

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

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

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

26 Глава 1

Рис. 1.8. Окно Изменение порядка команд Рис. 1.9. Пример меню для запуска макросов Настраиваемая кнопка — это готовая кнопка, которую можно перетащить на панель инструментов, а потом открыть для нее контекстное меню и воспользоваться командой Назначить макрос . Конечно же, для выбора иконки, формата отображения и т. п. можно воспользоваться и другими возможностями контекстного меню, которые доступны и в Word. Для создания нового меню в Excel нужно точно так же создать новое меню, как и в Word, а потом нажать на кнопку Упорядочить команды и добавить в это меню несколько элементов Настраиваемая команда меню . Их реальная настройка (в том числе и назначение макросов) производится по нажатию кнопки Изменить выделенный объект .

Основыпрограммирования в Microsoft Office 27

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

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

Читайте также:
Установить программу для рисования на компьютере на русском

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

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

28 Глава 1
Таблица 1.1. Специальные названия макросов для Word
Имя процедуры Когда запускается
AutoExec При запуске Word (этот макрос должен храниться в Normal.dot)
AutoNew При создании нового документа
AutoOpen При открытии любого документа (если в Normal.dot) или
при открытии документа, в котором находится макрос с таким
именем
AutoClose При закрытии документа
AutoExit При выходе из Word

В Excel предусмотрены специальные имена макросов для рабочей книги Auto_Open , Auto_Close , Auto_Activate и Auto_Deactivate . Однако Microsoft предупреждает, что эти возможности оставлены только для обратной совместимости, и рекомендует пользоваться событийными процедурами. Еще один момент, связанный с макросами Auto : поскольку раньше эти возможности активно использовались вирусами, в Office 2003 по умолчанию эти макросы запускаться не будут.

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

Например, чтобы открыть Word и сразу выполнить макрос MyMacros из Normal.dot, можно воспользоваться командой: winword.exe /mMyMacros Очень удобно использовать эту возможность, если создать несколько ярлыков для запуска приложения Office, например, на рабочем столе, изменить в них командную строку и использовать для запуска приложения с одновременным запуском макросов. Задание для самостоятельной работы 1: Запись макроса для автоматического ввода текста в Word Ситуация: Вам несколько раз в день необходимо передавать распоряжения в бухгалтерию. Каждое распоряжение должно заканчиваться строками, аналогичными представленным на рис. 1.11.

Основыпрограммирования в Microsoft Office 29

Рис. 1.11. Строки, ввод которых нужно автоматизировать ЗАДАНИЕ: Напишите при помощи макрорекордера макрос, который бы автоматически создавал такие строки (вместо «Петрова М. М.» подставьте ваши данные). Созданный макрос должен быть доступен для всех создаваемых вами документов. Он должен запускаться по нажатию кнопки с рожицей (рис.

1.12). Создайте новый документ, запустите макрос на выполнение и убедитесь, что он работает. Рис. 1.12. Веселая кнопка для пользователя Ответ к заданию 1 1. Откройте новый документ в Word.

В меню Сервис выберите Макрос | Начать запись . В окне Запись макроса в поле Имя макроса введите «Подпись» (без кавычек), убедитесь, что в поле Макрос доступен для стоит значение Всех документов (Normal.dot) , и нажмите кнопку Назна- чить макрос панели . 2. В окне Настройка на вкладке Команды перетащите элемент Normal.NewMacros.Подпись в нужное место на панели управления. Затем щелкните по перемещенному элементу правой кнопкой мыши, в контекстном меню выберите пункт Выбрать значок для кнопки , затем выберите изображение улыбающейся рожицы. Еще раз щелкните правой кнопкой мыши по этому элементу и в контекстном меню выберите Ос- новной стиль . Нажмите на кнопку Закрыть окна Настройка . Начнется запись макроса. 3. Введите нужный текст, а затем нажмите на кнопку Остановить запись (или в меню Сервис | Макрос выберите команду Остановить запись ). 4. Создайте новый документ Word и убедитесь, что новая кнопка работает и там.

Источник: studfile.net

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

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

Регистрация: 02.05.2009
Сообщений: 3,907
Запуск так.

Shell («I:Program FilesNotepad++Notepad++.exe»)

А как определяется конец выполнения программой определенного этапа.?
Варианты могут быть разные.
1.если программа отработала и закрылась-по запущенным процессам
2.Если известно время отработки-через таймер.
3.если создается файл-по его наличию,или времени изменения файла

Анализ,обработка данных Недорого
Последний раз редактировалось doober; 07.08.2010 в 17:03 .
Регистрация: 07.08.2010
Сообщений: 9

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

Последний раз редактировалось chobo; 07.08.2010 в 17:22 .
Регистрация: 02.05.2009
Сообщений: 3,907

Function Cont_Proc() As Boolean Dim Process As Object Dim Flag As Boolean Do Flag = False For Each Process In GetObject(«winmgmts:»).ExecQuery(«Select * from Win32_Process») If Process.Caption Like «cmd.exe*» Then Flag = True: Exit For Next Loop Until Flag = False Cont_Proc = True End Function Private Sub CommandButton1_Click() Shell («C:2.cmd») Cont_Proc — Далее ваш код будет выполняться после окончания работы скрипта End Sub
Анализ,обработка данных Недорого
Регистрация: 07.08.2010
Сообщений: 9

Класс. Спасибо, не знаю как, но работает!
Правда я для того, чтобы окно видеть изменил команду Shell:
ID = Shell(«C:TVlinks_tv.cmd», vbNormalFocus)

Источник: www.programmersforum.ru

Работа с макросами в Excel

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

Активация макросов Excel

Макрокоманды позволяют выполнять некоторые действия на полном автомате

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

Читайте также:
Программа gps для телефона или компьютера

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

Отображение в Office 2003

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

Office 2003

Чтобы включить макросы в Excel 2003, первоначально потребуется открыть непосредственно сам табличный редактор. Далее на самой верхней панели, среди предложенных инструментов меню, необходимо найти «Сервис», кликнув по которому, откроется контекстное меню, в перечне которого нужно найти пункт «Макрос».

Наведя курсор мышки на эту строку, открывается новое контекстное меню, среди которого выбор следует сделать на строке «Безопасность». Кликнув по нему, на экране отобразится диалоговое окно, предлагающее пользователю выбрать уровень безопасности. По умолчанию чаще всего переключатель установлен на высоком или очень высоком уровне безопасности, при котором макрокоманды просто так не запускаются.

Настройка редактора Excel

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

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

Выбор уровня безопасности

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

Отображение в Microsoft Office 2007 и 2010

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

Office 2007

По сути, включить макрокоманды в табличном редакторе офиса 2007 можно таким же самым способом, как и в Excel 2003. Отличие заключается лишь в том, что для открытия диалогового окна «Параметры макросов» приходится проделать несколько иной путь.

В офисе 2007 первоначально необходимо зайти в Меню, расположенное в верхнем левом углу, после чего сразу же осуществить переход в «Параметры Excel».

Расположение меню настроек в Excel 2007

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

После осуществления последовательных переходов на экране отобразится подменю «Параметры макросов», предоставляющее возможность вносить изменения в процесс отображения, написания и запуска различных макрокоманд.

В новом открывшемся окне переключатель нужно установить на последней строке «Включить все макросы». Система, конечно, предупредит, что такие действия могут позволить осуществлять запуск и опасных программ. Однако если пользователь уверен в своих действиях, на компьютере установлена надёжная противовирусная защита, то опасаться такого предупреждения нет смысла.

Активация всех макросов

Также включить и отключить макрокоманды в Excel 2007 можно более простым способом, ничем не отличающимся от включения их в Excel 2010.

Office 2010

Включить и отключить макрокоманды в Excel 2010 можно, воспользовавшись меню «Разработчик». Однако данное меню не всегда активно в табличном редакторе 2010, особенно в момент первого запуска офисного приложения, поэтому первоначально следует совершить определённые действия, чтобы создать данное меню на панели инструментов. Специалисты рекомендуют выносить на панель инструментов подменю, к которым приходится достаточно часто обращаться в процессе выполнения различных задач.

Настройка панели инструментов

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

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

Панель для работы с макросами

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

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

Писать такие команды в Excel 2010 несложно, достаточно кликнуть по строке «Начать запись», а дальше производить те действия, которые ранее выполнялись пользователем, и которые он желал бы осуществлять автоматически. Завершив выполнение действий, нажимается кнопка «Завершить». Теперь созданная подпрограмма будет отображаться в списке доступных, кликнув по ней, запустится процесс, идентичный тому, что был выполнен пользователем вручную.

Запись макрокоманд в Excel

Достаточно создать только первую макрокоманду в Excel 2010, как пользователь поймёт, что ничего сложного в этом нет, а также ощутит заметные преимущества, которыми станет сопровождаться его работа. Благодаря этому появляется желание писать новые подпрограммы и совершенствовать процесс выполнения производственных задач.

Итак, макрокоманды в табличных редакторах 2003, 2007 и 2010 способны восприниматься большинством пользователей в качестве лучших помощников, позволяющих рутинную работу автоматизировать и повысить её результативность.

Источник: nastroyvse.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru