Практическая работа. Практическая часть Задание Создание макроса в автоматическом режиме
Скачать 253.49 Kb.
|
Работая в программах Microsoft Office можно заметить, что для получения тех или иных результатов каждый раз выполняется одна и та же последовательность операций. Очевидно, что возникает вопрос: «Можно ли сделать так, чтобы данная последовательность команд выполнялась одним щелчком мыши (одной командой)?». Такая записанная последовательность команд называется макрокомандой (или просто макросом). При записи макроса программа записывает все действия пользователя, включая ошибочные и лишние. Для записи макросов используется специальный язык программирования Visual Basic for Application (VBA). Начиная с Office 97 язык VBA встроен во все приложения. Таким образом, работа макроса напоминает работу обычного магнитофона. После включения средства записи макросов оно будет записывать все команды, которые вы используете в приложении, до тех пор, пока не щелкнете на кнопке Остановить запись. После того как макрос записан, вы сможете воспроизводить его каждый раз, когда вам потребуется записанная в нем последовательность команд. Практическая часть Задание 1. Создание макроса в автоматическом режиме
Рис. 1. Таблица «Студент»
Рис. 2. Панель Данные
Рис.3. Окно «Расширенный фильтр»
Рис. 4. Окно «Запись макроса»
Теперь ваш макрос готов. В пункте Макросы имеется еще одна кнопка – «Относительная ссылка». По умолчанию в макросы записываются абсолютные адреса ячеек, т.е. действия будут выполняться в одних и тех же областях рабочего листа. Если выбрать «Относительная ссылка», то действия будут записываться в относительных адресах, т.е. с учетом текущего положения активной ячейки. Каждый щелчок на кнопке переводит режим в противоположный. Такое переключение можно выполнять в любой момент на протяжении записи макроса. Созданный макрос будет записан в особой части рабочей книги, называемый модулем. Рабочая книга может содержать несколько модулей. В каждом модуле могут быть записаны несколько макросов. Модуль для записи макроса выбираются автоматически, а при необходимости создается новый. В каждом сеансе работы, если выполняется запись макроса, создается новый модуль. Модули рабочей книги имеют имена ModuleN, где N – порядковый номер модуля. Задание 2. Запуск макроса на выполнение
Для этого необходимо:
Рис. 5. Окно настройки панели инструментов
Рис. 6. Окно Изменение кнопки
Макрос добавиться на панель быстрого доступа (рис. 7). Запустите макрос на выполнения с помощью данной кнопки. Рис. 6. Панель быстрого доступа 4. Макрос можно назначить любому графическому объекту, расположенному на рабочем листе. Это может быть рисунок из стандартного набора, автофигура или сгруппированный объект. Для этого:
Макрос, записанный в автоматическом режиме, не обладает достаточной гибкостью и универсальностью. Для корректного выполнения команд должны быть заранее подготовлены соответствующие начальные условия. Самое неприятное, что действия, выполненные с помощью макроса, нельзя отменить обычной командой Правка – Отменить. Поэтому, если вы случайно щелкнули не на той кнопке, то в результате можете получить нежелательные изменения на рабочих листах. Чтобы избежать досадных недоразумений при работе с макросами и повысить эффективность их использования, необходимо научиться вносить изменения в текст макроса. Это можно сделать с помощью редактора VBA. Окно редактора VBA Редактор Visual Basic (VB-редактор) – это инструмент для создания модулей и просмотра их содержимого, создания и редактирования текста макросов, создания диалоговых окон и т.д. VB-редактор приложения Excel аналогичен VB-редакторам других приложений, поддерживающих VBA. Открыть окно редактора можно тремя способами.
В случае редактирования макроса, лучше использовать третий способ запуска редактора. Редактор Visual Basic представляет собой окно приложения с одним меню и набором панелей инструментов, в котором вы получаете доступ к целому ряду дочерних окон, обеспечивающих возможность использования всех средств, необходимых для создания программ (рисунок 1). Рис. 1 Окно редактора VBA При запуске VB-редактора на экране появятся следующие окна: 1. Окно «Project» (Проект). В окне Project отображается древовидная структура, описывающая проект: открытые в данный момент рабочие книги, листы, модули и формы, которые в них содержатся. Например, открытая рабочая книга Книга1.xls содержит три рабочих листа и один лист модуля с текстом макроса.
Окно VBA содержит собственную строку меню и набор панелей инструментов. Обычно на экране присутствует панель Standart (Стандартная). Команды редактора Рассмотрим основные команды, необходимые для того, чтобы начать работу в редакторе. Таблица 1 Основные команды редактора Visual Basic
Командам выполнения макроса (меню Run) соответствуют кнопки на панели инструментов, показанные на рисунке 2 (три кнопки слева направо): Запуск, Прервать, Сброс. Рис. 2. Кнопки запуска и останова макроса Текст макроса В окне редактора кода отображается непосредственно текст макроса (в данном случае, макроса «Специальность») Рассмотрим каждую строку макроса подробнее
Каждый VBA-макрос начинается с ключевого слова Sub, за которым через пробел следует имя макроса и пустые скобки. Ключевое слово – это слово, зарезервированное в VBA для специального использования, в отличие от имени макроса, которое задается пользователем. Ключевые слова не могут быть использованы в качестве имен. Ключевые слова в редакторе обычно отображаются синим цветом. Строки с номерами 2, 3, 4, 5 – это строки комментариев, добавленных автоматически. Каждая строка начинается с символа апостроф «’». Все, что записано после апострофа, считается комментарием. Комментарий не является частью языка программирования и не содержит выполняемых инструкций. Комментарии служат для пояснения текста макроса. Комментарии в редакторе обычно отображаются зеленым цветом. Иногда комментарий используют для того, чтобы отменить выполнение фрагмента или отдельных строк макроса. При записи макроса в автоматическом режиме комментарии обычно содержат название макроса, дату и автора макроса. Далее следует тело макроса, каждая строка которого содержит одну или несколько инструкций языка VBA. VBA-инструкции в макросе соответствуют тем действиям, которые Вы выполняли при записи макроса. Например, четвертому шагу примера макроса соответствуют строки 6, 7, которые соответствуют действиям по удалению старого результата (выделить текущую область, очистить ячейки). Далее в строке 8 записана команда, выполняющее выделение ячейки. Строки 9, 10, реализуют расширенный фильтр (выполнить команду Данные – Фильтр – Расширенный фильтр). Если внимательно прочитаете строки 9 и 10, то Вы найдете в них все установленные параметры расширенного фильтра. Далее следует переход к области по ее имени. Завершается текст макроса обязательной инструкцией End Sub (конец процедуры). Для облегчения работы с текстом макроса длинные инструкции можно переносить с одной строки на другую. Признаком переноса инструкции на другую строку является комбинация символов «пробел» и «подчеркивание» в конце строки. Она указывает VBA, что следующая строка является продолжением предыдущей (строка 10 является продолжением строки 9). |