Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
1 Лабораторная работа МАКРОСЫ.docx
Скачиваний:
6
Добавлен:
18.09.2019
Размер:
1.15 Mб
Скачать

ТЕМА – РАБОТА С МАКРОСАМИ

ТЕОРЕТИЧЕСКИЙ МАТЕРИАЛ

  • Макрос — это набор команд, которые можно применить, нажав всего лишь одну клавишу. С помощью макроса можно автоматизировать любое действие, которое выполняется в используемом приложении. Макрос является программой, однако, чтобы использовать в работе макросы, вам не нужно быть разработчиком или программистом. Для создания большинства макросов, используемых в приложениях Office, применяется язык Microsoft Visual Basic for Applications, обозначаемый как язык VBA.

  • Редактор VBA – интегрированная среда разработки, в которой осуществляется написание кодов (программирование) на языке VBA. Чтобы перейти в данный режим, необходимо нажать сочетание клавиш Alt+F11.

  • Объект – основной элемент VBA Excel. В VBA объектами являются рабочая книга, рабочий лист и его составляющие.

  • Методы. Над объектами можно совершать различные действия. Действия, совершаемые над объектами, называются методами. Например, ячейку можно очистить (Clear), приложение закрыть (Quit), пользовательскую форму показать (Show) или скрыть (Hide).

  • Свойства. Свойствами описываются характеристики объектов. Например, размер и цвет шрифта, положение формы на экране или состояние объекта (доступность, видимость).

  • События. Событие представляет собой действие, распознаваемое объектом (например, щелчок мышью или нажатие клавиши, перемещение мыши или выход из программы), для которого можно запрограммировать отклик, т.е. реакцию объекта на произошедшее событие.

ЛАБОРАТОРНАЯ РАБОТА №1. Автоматическая запись макросов

Содержание

Часть 1. Автозапись макросов Excel

Часть 2. Автозапись макросов Word

Чать 1. Макросы в Excel

В таблице представлена информация о самых ценных алмазах в мире. Требуется создать макрос для нахождения алмаза с максимальной массой в граммах с помощью стандартной функции МАКС. Необходимо сохранить последовательность действий пользователя и на их основе создать макрос.

Технология работы

1. Откройте новую книгу.

2. Создайте таблицу по приведенному образцу, представленному на рис.1.

Рис. 1. Исходная

3. В ячейке D10 набрать “Максимальная масса в граммах”. Курсор после набора текста может находиться в любой ячейке, кроме ячейки, в которой хотим получить результат. На панели Visual Basic нажмите на кнопку Запись макроса. Появится диалоговое окно (рис.2):

Рис. 2. Окно Запись макроса

Введите вместо названия Макрос1 название макроса Алмаз и нажмите ОК. Теперь все производимые нами действия будут записываться. Не выполняйте никаких лишних действий. Все ваши действия фиксируются и записываются.

Установите курсор в ячейку E10. В этой ячейке должен появиться результат.

4. Выполните команду Вставка → Функция. Появится диалоговое окно Мастер функций. В окне Категории функций выберите Статистические. Затем выберите функцию МАКС. Появится диалоговое окно, в первой строке которого необходимо указать диапазон, в котором мы будем искать максимальное значение, – E2:E8. Нажмите ОК.

5. Щелкните на кнопке Остановить запись на панели Visual Basic. Запись макроса завершена.

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

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

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

Затем:

1. установите курсор в любую ячейку листа;

2. выполните команду Сервис → Макрос → Макросы. Появится диалоговое окно, показанное на рис. 3;

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

3. выделите макрос Алмаз и щелкните по кнопке Выполнить.

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

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

Во время записи макроса MS Excel запоминает ваши действия и преобразует их в код VBA. Можно просмотреть полученный код и отредактировать его, если в этом есть необходимость. Для просмотра созданного макроса выполните команду Сервис → Макрос → Макросы. Появится уже знакомое диалоговое окно Макрос (рис.3).

Выделим макрос Алмаз и щелкнем по кнопке Изменить. Откроется окно редактора, представленное на рис.4.

Рис. 4. Использование редактора Visual Basic для просмотра и редактирования кода VBA

При записи макроса выполнялись всего два действия. Сначала мы установили курсор в ячейку E10. На языке VBA этому действию соответствует строка:

Range("E10").Select

Затем мы вызвали функцию МАКС и в качестве аргумента указали диапазон ячеек E2:E8:

ActiveCell.FormulaR1C1 = "=MAX(R[-8]C:R[-1]C)"

Полученный код можно редактировать непосредственно в редакторе Visual Basic. Изменим размер шрифта в ячейке E10 на 16:

Range("E10").Font.Size = 16

Можно также изменить цвет шрифта. Например, изменим цвет текста в ячейке на красный:

Range("E10").Font.ColorIndex = 3

Значения, которые может принять свойство Font.ColorIndex, изменяются от 1 до 56.

После внесенных изменений текст макроса стал следующим:

Sub Алмаз()

' Алмаз Макрос

Range("E10").Select

ActiveCell.FormulaR1C1 = "=MAX(R[-8]C:R[-1]C)"

Range("E10").Font.Size = 16

Range("E10").Font.ColorIndex = 3

End Sub

Закройте окно редактора, вернитесь на лист MS Excel, удалите содержимое ячейки E10 и запустите макрос на выполнение.

Назначение макроса графическим изображениям

Разрабатывая приложение, надо думать о том, чтобы создать легкий и удобный интерфейс для выполнения задач автоматизации. Запуск макросов на выполнение посредством команд меню или кнопок на панели Visual Basic – не слишком удобный механизм для пользователей.

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

Используя панель Рисование, нарисуем на листе любую автофигуру. Щелкнем правой кнопкой мыши на изображении и в открывшемся контекстном меню выберем команду Назначить макрос. Отобразится диалоговое окно Назначить макрос объекту. Затем необходимо выбрать макрос Алмаз и щелкнуть вне графического изображения, чтобы снять выделение с объекта.

Теперь макрос Алмаз можно запустить посредством щелчка на автофигуре. Ваша работа примерно должна выглядеть так, как показано на рис.5.

Рис. 5. Автофигура и кнопка для запуска макроса

Запустить макрос на выполнение можно и другим способом, использовав командную кнопку. Вставить командую кнопку непосредственно на рабочий лист MS Excel можно с помощью панели инструментов Формы для MS Excel 2003, либо через вкладку Разработчик для версии MS Excel 2007-2010. Затем необходимо назначить ей наш макрос.