- •Введение
- •Лабораторная работа №1 Знакомство с Visual Basic for Applications
- •Лабораторная работа №2 Создание первой программы в vba
- •Объявление переменных
- •Лабораторная работа №3 Построение алгоритма ветвления. Конструкция If _ Then _ Else
- •Лабораторная работа №5 Организация циклов Операторы for…next и while…wend
- •Цикл For...Next
- •Оператор Do While...Loop
- •Оператор Do Until...Loop
- •Рабочее задание (по вариантам):
- •Информация для выполнения заданий
- •Лабораторная работа № 6 Создание пользовательской формы
Лабораторная работа №1 Знакомство с Visual Basic for Applications
Цель работы: ознакомление со средой Visual Basic for Applications, встроенного в MS Excel, освоение приёмов создания макроса.
Задание 1: Создать макрос для форматирования ячейки
Создайте новую книгу MS Excel. В книге оставьте три листа (лишние удалите, недостающие добавьте). Первому листу дайте имя Хххх-1, где Хххх – Ваша фамилия. Сохраните книгу под именем Хххх1.xls в личной папке на жестком диске.
Запустите Visual Basic for Applications следующими способами:
-
дайте команду Разработчик | VB (Если на ленте нет меню Разработчик, то выполните следующие действия: ПКМ на ленте → Настройка панели быстрого просмотра → Основные → Показать вкладку «Разработчик» на ленте);
-
или нажмите комбинацию клавиш Alt+F11.
В окне Visual Basic
-
дайте команду Tools | Options, на вкладке Editor проверьте установку флажка Require Variable Declaration (флажок должен быть установлен); на вкладке Docking установите все флажки, кроме Object Browser;
-
изучите окно Project Explorer. Отметьте, какие объекты указаны в его окне; найдите имя объекта Лист1 – это должно быть имя, которое Вы дали выше;
-
Потренируйтесь в выводе/отключении окон Project и Properties.
-
обратите внимание, что основная часть экрана Microsoft Visual Basic – тёмная и пустая.
Вставьте новый модуль через меню Insert / Module. Обратите внимание на имя модуля.
Перейдите в окно приложения (в окно Excel), выполните команду Разработчик | Запись макроса и создайте макрос с именем ФорматированиеЯчейки по следующему сценарию:
-
выделите диапазон ячеек B1:F2;
-
щёлкните правой кнопкой по выделенной области и из контекстного меню выберите команду Формат ячеек (или откройте меню Главная на ленте);
-
на вкладке Число выберите Текстовый;
-
на вкладке Выравнивание установите: горизонтальное выравнивание – по центру выделения, вертикальное – по центру, переносить по словам;
-
на вкладке Шрифт выберите Arial Cyr, обычный, 12, цвет текста – синий;
-
на вкладке Граница установите цвет линий коричневый, внешние границы – двойная линия, внутренние границы – одинарная тонкая линия;
-
на вкладке Вид выберите цвет заливки – какой-нибудь светлый. Щелкните по кнопке ОК.
Щелкните по кнопке “Остановить запись”.
Перейдите в окно Visual Basic, в окне Project Explorer найдите изменения, щёлкните по квадратику с плюсом и двойным щелчком откройте Module1. В окне кода появится текст записанного макроса.
Изучите текст и вставьте комментарии (знак апострофа и поясняющий текст) к логическим блокам макроса: задание имени и размера шрифта, горизонтальное и вертикальное выравнивание текста, цвет заливки, тип и цвет линий границы.
Нажмите на клавишу F4, в окне Properties измените имя (Name) Module1 на МакросФорматЯчейки и нажмите клавишу Enter или щёлкните мышкой где-нибудь. Заметьте, как изменилось имя модуля в окне Project Explorer. Закройте окно Properties.
Запустите созданный макрос и убедитесь в его работоспособности.
Сохраните книгу, закройте, скопируйте файл на личную дискету.
Контрольные вопросы.
1)Для чего предназначен VBA?
2)Если говорится “приложение”, то что имеется в виду?
3)Как перейти в окно VBA из окна приложения?
4)Как перейти в окно приложения из окна VBA?
5)Какие окна можно видеть на экране VBA?
6)Объясните процедуру записи макроса.
7)Вы создали макрос. Где найти его текст?
8)Перечислите объекты, с которыми оперирует макрос ФорматированиеЯчейки.
9)Объясните назначение Проводника Проекта (Project Explorer).
10)Как называется набор модулей, пользовательских форм и классов, находящихся в одном приложении?
11)Как можно добавить модуль в состав проекта?
12)Какие имена присваивает VBA новым модулям?