Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка Excel.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
299.01 Кб
Скачать

Тема 10. Автоматизация работы в табличном процессоре с помощью макросов

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

Использованный в Excel язык макросов Visual Basic обладает достаточными возможностями для решения многих нетривиальных задач – например, для связи с другими приложениями Windows или даже для создания полной системы складского учета.

Рассмотрим простой пример. По умолчанию ячейка Excel имеет ширину в 8 символов, однако для нескольких первых столбцов листа этого часто недостаточно, поскольку пользователь обычно вводит в них длинные строки с именами клиентов, названиями компаний или географических регионов. В нашем примере мы запишем макрос, который задает для первого столбца листа ширину в 25 символов, а для трех следующих столбцов по 15 символов. Для записи макроса будет использоваться подменю Запись макроса в меню Сервис, а имя макроса будет задано в окне диалога Запись макроса. Создание макроса, автоматически меняющую ширину столбцов, происходит так:

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

2.     Вызовите подменю Запись макроса в меню сервис. В нем содержится две команды – начать запись и относительные ссылки . Для создания макросов в нам понадобиться только первая команда.

3.     Приступайте к записи макроса командой Начать запись. Открывается окно диалога.

4.     Введите в поле Имя макроса текст «Расширение столбцов» и нажмите кнопку ОК. Позднее это имя пригодится для выполнения и редактирования макроса. Excel закрывает окно диалога Запись макроса, помещая на отдельную панель инструментов кнопку остановить запись и начинает запись макроса. С этого момента любое выделение ячеек или выполнение команды Excel будет сохранено в макросе (после завершения записи вернитесь к нормальной работе кнопкой Остановить запись).

5.     Теперь введите свой макрос. Выделите первый столбец щелчком по его заголовку – букве А, затем вызовите меню Формат и выполните в подменю Столбец команду Ширина. Открывается окно диалога, в котором предлагается ввести новую ширину столбца.

6.     Введите в текстовое поле Ширина столбца значение 25 и нажмите кнопку ОК, чтобы увеличить размер А до 25 символов.

7.     Выделите столбцы В, С и D, перетаскивая указатель мыши по заголовкам, и снова выполните команду Ширина. Введите в поле Ширина столбца значение 15 и нажмите кнопку ОК.

8.     Наконец, выделите ячейку А1, чтобы вернуть курсор к началу листа. Последним шагом при записи макроса всегда должно быть приведение экрана к состоянию, позволяющему продолжать работу с минимальными усилиями.

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

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

10. Выполните команду Сохранить в меню Файл, чтобы сохранить книгу с макросом на диске. После всех хлопот с записью макроса не хотелось бы потерять его.

Выполнение макроса

Чтобы сделать автоматизацию работы более гибкой, Excel предоставляет пользователю четыре способа выполнить макрос:

-         двойной щелчок по имени макроса в окно диалога Макрос;

-         нажатие сочетания клавиш (если оно было присвоено макросу);

-         выбор имени макроса в меню Сервис (если он был добавлен в меню);

-         нажатие кнопки макроса на панели инструментов (если для него была создана кнопка);

-          

Выполнение макроса из окна диалога Макрос

Выполнение макроса Расширения 4 столбцов из окон диалога макрос производится так:

Выведите на экран лист, на котором должен выполниться макрос. Если при записи был использован лист1 текущей книги, следует щелкнуть на ярлычке лист2, чтобы потренироваться на пустом листе.

Выполните команду Макрос в меню Сервис. Открывается окно диалога Макрос. В нем перечислены все макросы текущей книги, а вместе с ними – макросы из других открытых книг или из личной книги макросов.

Сделайте двойной щелчок на имени макроса, который требуется выполнить. Excel моментально выполняет и форматирует столбцы так, как было нужно. Для повторного выполнения на другом листе текущей книги откройте лист и повторите 2 и 3.

Назначения макросу сочетания клавиш

Команда: Сервис – Макрос – Параметры – параметры макроса – сочетания клавиш.

Назначение макросу команды в меню Сервис

Сервис – Макрос – Параметры макроса – Пункт и введите в текстовое поле под ним значение Расширить 4 столбца. Вставление в название команды амперсанд выделяет букву “ш”; таким образом, кроме щелчка мыши команду можно также выполнить нажатием клавиши “ш”.

Редактирование макроса

1.    Нажмите кнопку прокрутки ярлычков для просмотра последних листов книги и щелкните на ярлычке Модуль 1. Excel отображает содержимое макроса Расширения 4 столбцов. Кроме того, Excel выводит на экран панель инструментов Visual Basic с кнопками, предназначенными для создания, тестирования и выполнения макроса на Visual Basic.

2.    Макросы Excel сохраняются в виде подпрограмм на листе модуля, а начало и конец каждого из них отмечаются операторами Sub и End. По умолчанию комментария выводятся зелеными буквами, специальные ключевые слова Visual Basic – синими, а все прочие команды и величины – черными.

3.    Установите курсор перед ключевым словом Sub и дважды нажмите клавишу Enter, чтобы освободить место для комментария, описывающего назначение макроса Расширение 4 столбцов. В строке перед ключевым словом Sub введите ’Макрос для расширения четырех начальных столбцов листа, затем нажмите клавишу (стрелочка вниз). Знак апострофа, с которого начинается текст, показывает, что строка является комментарием, и после нажатия клавиши (стрелка вниз) он выводится зелеными буквами. Комментарии служат только для документирования и не влияют на выполнение макросов.

4.    Установите курсор возле числа 25 в операторе Visual Basic.

5.    Selection Columnwidth = 25

6.    При выполнении макроса эта строка устанавливает ширину столбца А в 25 символов. Мы отредактируем оператор, чтобы задать другую ширину столбца.

7.    Измените значение ширины с 25 на 30 символов. Excel запоминает в макросе новое значение. При следующем его выполнении ширина столбца А в текущем листе изменяется на 30 символов.

8.    Нажмите кнопку Сохранить на стандартной панели инструментов; чтобы записать изменения в тексте макроса на диск;

9.    Чтобы удалить макрос из книги, выполните команду Макрос в меню Сервис, выберите его из списка и нажмите кнопку Удалить.

10.       Создание макроса в личной книге осуществляется с помощью:

11.       Сервис – Запись макроса – Начать запись – Имя макроса – Значение (например Новый нижний колонтитул) – Параметры. Установите в группе Сохранить в книге опцию Личной и нажмите кнопку ОК.

12.       Кроме назначения макросам сочетаний клавиш и внесение их в меню Сервис можно также создавать для них кнопки и помещать их на любую панель инструментов. Для этого необходимо, чтобы кнопка постоянно присутствовала на панели инструментов, макрос должен находиться в личной книги. После того как создание макроса будет завершено, кнопка помещается на панель командой Панели инструментов в меню Вид. Воспользуйтесь кнопкой Настройка в окне панели инструментов. Откроется окно диалога Настройка панелей инструментов, справа от списка Категории отображаются кнопки, связанные с выделенной в списке категорий.

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