Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методика по Информатике / VBA / Усольцева Л.А.- Программир.на VBA.doc
Скачиваний:
110
Добавлен:
10.04.2015
Размер:
1.71 Mб
Скачать

Глава 2. Основные принципы работы с vba

2.1. Алфавит vba

Visual Basic for Application (VBA) для приложения Excel – это сочетание одного из самых простых языков программирования и всех вычислительных возможностей табличного процессора Excel. VBA содержит графическую среду, позволяющую наглядно конструировать экранные формы и управляющие элементы.

В результате своей эволюции Visual Basic превратился в (почти) объектно-ориентированный язык программирования.

Объекты – это естественные детали VBA-ландшафта. Посредством объектов вы получаете доступ к функциональным возможностям VBA-приложения.

С практической точки зрения объект – это просто именованный элемент, имеющий:

  • свойства, то есть установки, которые вы можете проверить или изменить;

  • методы, то есть действия, которые объект может выполнить, если программа попросит об этом;

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

Прежде чем программировать на VBA, следует запустить табличный процессор Excel. Редактор Visual Basic является командным центром для работы в VBA. Вызов редактора Visual Basic осуществляется при помощи команды Сервис – Макрос – Редактор Visual Basic главного меню Excel.

Для написания программы необходимо создать модуль VBA и открыть окно его программного кода при помощи команды Вставка – Модуль.

В результате этих действий на экране появится окно редактора Visual Basic (рис. 5).

В окне программного кода печатается составленная программа, а затем запускается при помощи кнопки Запуск макроса или команды меню Запуск – Запуск программы. Также выполнить программу можно, нажав клавишу F5.

Запуск макроса

Рис. 5. Окно редактора Visual Basic

Разработка пользовательской формы и элементов управления

Для написания программы в окне редактора необходимо создать модуль VBA(рис.6) при помощи командыInsert (Вставка) → Module (Модуль), для разработки формы с панелью элементов ToolBox(см. рис. 6) используется командаInsertUserForm (Пользовательская форма).

При создании Пользовательской формыдля управления ходом исполнения программы могут понадобиться кнопки (например, Расчет и Выход) и окно вывода результатов вычислений.

Для создания кнопки выбирают соответствующий элемент управления кнопка с надписью по умолчанию Command. Надписи на кнопках можно изменять после двойного щелчка ПКМ на надписи кнопки, или изменяяСвойства (Properties) → Caption (рис. 7).

В окне программного кода записывается программа, а затем запускается кнопкой Запуск макроса (илиЗапуск – Запуск программы, или F5).

Рис. 6. Создание модуля и формы с панелью элементов

На форме можно создавать элементы управления программой и выводом результатов На рис. 7 показаны кнопка CommandButtonи текстовое полеListBox.

Рис. 7. Разрабатываемая форма

При составлении программ приходится сталкиваться с такими понятиями, как оператор, процедура, модуль.

Для написания программного кода, состоящего из операторов языка, необходимо создать процедуру.

Оператор – это наименьшая, способная выполняться единица VBA-кода. Оператор может объявлять или определять переменную, устанавливать параметр компилятора VBA или выполнять какое-либо действие в программе. У допустимого оператора много сходства с законченным предложением – оператор должен содержать правильный набор “частей речи”.

Процедура – это наименьшая единица программного кода, на которую можно ссылаться по имени. Это также наименьшая единица программного кода, которая может выполняться независимо. VBA распознает два главных типа процедур: Sub и Function. Любая процедура содержит один или более операторов, помещенных между двумя специальными операторами: объявлением процедуры в начале и оператором завершения процедуры в конце (End Sub или End Function).

Модуль – это именованная единица, состоящая из одной или нескольких процедур, а также объявлений, относящихся ко всем процедурам в модуле.

В VBA имеется два типа модулей. Чаще всего используется стандартный модуль, который содержит программный код, предназначенный непосредственно для выполнения. Другим типом модуля является модуль класса, в котором определяются пользовательские объекты с их свойствами и методами.

Для создания процедуры или функции (рис. 8, а, б) можно выбрать пункт менюInsert (Вставка) → Procedure (Процедура) или выполнить двойной щелчок ПКМ на форме или элементе формы (кнопке, текстовом поле и т.п.).

a б

Рис. 8. Способы создания процедур