Смекни!
smekni.com

Возможности Excel (стр. 2 из 2)

Просмотреть и отредактировать макрос позволяет команда Tools > Macro > Visual Basic

Editor (Сервис > Макрос ≫ Редактор Visual Basic), но можно также воспользоваться кнопкой Visual Basic Editor (Редактор Visual Basic) панели инструментовVisual Basic или комбинацией клавиш Alt+Fll. В любом случае после активизацииуказанных элементов открывается окно Microsoft Visual Basic. Правда, содержимоеVBA-модуля в этом окне пока не отображается. Чтобы начать редактирование, необходимо в окне Project (Проект) открыть папку Modules (Модули) и выбрать имя модуля

Итак, в настоящий момент мы находимся в режиме работы с VBA-модулем. Как

уже было отмечено, редактирование VBA-модулей выполняется в среде Visual Basicfor Applications, в которой пользователю предоставляются средства для разработки программ, анализа связей между объектами (VBA является объектно-ориентированным языком программирования), отладки программ и их организациив единый программный комплекс (проект).

В VBA текст макроса оформляется в виде процедуры Sub. Данная процедура соз-

дается на основе событий (таковым может быть, например, изменение размера

Автоматизация рабочих процессов '_ 359

окна или щелчок на кнопке) и методов. Каждому событию поставлены в соответ-

ствие методы, которые задают необходимость выполнения определенных опера-

ций при наступлении данного события. Так, при щелчке на ярлычке рабочего

листа событием является изменение активного листа. Благодаря связанному с этим

событием методу лист, на ярлычке которого был произведен щелчок, активизи-

руется и отображается на переднем плане. В зависимости от типа активизирован-

ного листа изменяются и некоторые команды меню. В VBA пользователь может

задавать собственные события и ставить им в соответствие методы.

Как видите, макрос начинается с оператора Sub. За ним следует имя макроса, ко-

торое служит для идентификации такового. Если это имя изменить, соответст-

вующим образом изменится имя макроса в диалоговом окне Macro (Макрос). По-

сле имени идет текст макроса, который можно редактировать, а также снабжать

комментариями. В начале каждого комментария должен стоять символ апостро-

фа ('). Завершается макрос оператором End Sub.

360 Урон 12 • Работа с макросами, основы УВД

Часто при отладке макроса возникает необходимость поэтапно проследить за его

выполнением. Для этого следует воспользоваться специальным, пошаговым, ре-

жимом выполнения макроса.

Для активизации режима отладки в диалоговом окне Macro (Макрос) нужно на-

жать кнопку Step Into (Войти), в результате чего будет открыто окно Microsoft Visual

Basic (рис. 12.8), содержащее текст макроса. Здесь оператор, обрабатываемый

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

роса можно с помощью команды Step Into (Пошагово) меню Debug (Отладка) или

клавиши F8. Поскольку пошаговое выполнение может занять очень много време-

ни, в строках макроса следует установить точки останова. По достижении точки

останова обработка макроса прерывается, а на экране появляется окно отладки,

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

быть продолжено выполнение макроса.

Рис. 12.8. Окно отладки макроса

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

1. Откройте книгу, содержащую макрос, который требуется удалить.

2. Выберите команду Tools > Macro > Macros (Сервис > Макрос > Макросы).

3. В списке Macros in (Находится в) открывшегося окна Macro (Макрос)

укажите элемент This Workbook (Эта книга).

4. В списке Macro name (Имя макроса) выберите имя макроса, который нуж-

но удалить, и щелкните на кнопке Delete (Удалить).

Автоматизация рабочих процессов 361

Создание панелей инструментов для запуска макросов

В Excel пользователь может создавать собственные панели инструментов. Для это-

го нужно выбрать в меню Tools (Сервис) или в контекстном меню панелей инст-

рументов команду Customize (Настройка), затем на вкладке Toolbars (Панели ин-

струментов) открывшегося окна Customize (Настройка) щелкнуть на кнопке New

(Создать), а когда появится диалоговое окно New Toolbar (Создание панели инст-

рументов), показанное на рис. 12.9, ввести имя создаваемой панели и щелкнуть

на кнопке ОК. В результате имя создавемой панели инструментов появится в спи-

ске панелей, который находится в окне Customize (Настройка).

Рис. 12.9. Диалоговое окно New Toolbar

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

вкладку Commands (Команды) окна Customize (Настройка). На ней представлены

все доступные в Excel элементы панелей инструментов и все команды, которые

объединены в категории (рис. 12.10). Любую кнопку и команду можно сделать

элементом новой панели инструментов. В списке Categories (Категории) выберите

элемент Macros (Макросы), а затем из поля Commands (Команды) переместите на

новую панель инструментов кнопку Custom Button (Настраиваемая кнопка).

Г и л id,-, гптгпч ч ',; /, tot*ar' ≪tot a titt^ory ≪i ≫н

г;,',>„•_•!.•'. oi

,";,.,,,•, -,.

: ................... ....,r^.i

Name: acuslomButton ] -т

Copy Button Image ',.

Reset Button Image

&ht Button

Change Bjjtton Image

DeFuu.lt Style

lert OrJy (Always)

Рис. 12.10. Вкладка Commands окна Customize

362 Урок 12 • Работа с макросами, основы УВД

Закрепить макрос за кнопкой можно после ее размещения на панели инструмен-

тов. Для этого необходимо сделать активным контекстное меню кнопки Custom

Button (Настраиваемая кнопка), задать команду Assign Macro (Назначить макрос)

и в открывшемся окне указать имя макроса (рис. 12.11), который нужно связать

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

-ITNs Workbook

Рис. 12.11. Диалоговое окно Assign Macro

После этого контекстное меню данной кнопки следует вновь открыть и в поле

Name (Имя) ввести имя макроса, которое будет на ней отображаться. Таким обра-

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

специально для запуска макросов.

Создание меню для запуска макросов

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

в уже действующие меню. Рассмотрим принцип создания нового меню для ко-

манд запуска макросов.

Чтобы вставить новое меню в строку меню, необходимо выполнить следующие

действия: открыть диалоговое окно Customize (Настройка), перейти на вкладку

Commands (Команды), выбрать там категорию New Menu (Новое меню) и, когда

в поле Commands (Команды) появится элемент New Menu (Новое меню), перемес-

тить его в строку меню (рис.12.12). Следует помнить, что строка меню в Excel яв-

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

элементы из окна Customize (Настройка).

Новому меню по умолчанию присваивается имя New Menu (Новое меню). Если вы

хотите изменить его, щелкните на меню правой кнопкой мыши (окно Customize

(Настройка) должно быть открытым) и введите новое имя в поле Name (Имя)

контекстного меню.

Автоматизация рабочих процессов 363

Рис. 12.12. Создание нового меню

Теперь в меню можно добавлять команды. На вкладке Commands (Команды) окна

Customize (Настройка) выберите категорию Macros (Макросы), а в поле Commands

(Команды) — элемент Custom Menu Item (Настраиваемая команда меню) и перета-

щите его в новое меню. Чтобы связать команду меню с макросом, откройте кон-

текстное меню команды (окно Customize (Настройка) должно быть открыто) и вы-

зовите в нем команду Assing Macro (Назначить макрос). Затем, если это нужно, из-

мените имя команды меню. Аналогичным образом вставьте все необходимые ко-

манды вызова макросов.