Знакомство с редактором Visual Basic for Application (VBA). Среда VBA
24.12.16
1
Знакомство с редактором Visual Basic for Application (VBA).
Среда VBA
Для вызова редактора VBA необходимо выполнить команду:
СервисМакросРедактор Visual Basic
либо щелкнуть правой клавишей мыши на ярлычке одного из
существующих листов и выбрать из контекстного меню:
Вставка Исходный текст (Alt+F11)
Редактор VBA предназначен для создания и редактирования
программного кода на языке VBA.
Строка меню основного окна Visual Basic содержит:
File – которое позволяет создавать, открывать, сохранять, пе-
чатать проекты, добавлять новые, удалять и сохранять существую-
щие формы проекта, а также создавать *.ехе файлы.
Edit – команды редактирования объектов. Они позволяют вы-
резать, копировать, вставлять, удалять, связывать объекты и т.д.
View – служит для активизации необходимых окон.
Project – служит для добавления новых форм, модульных лис-
тов, удаления ненужных форм, установления параметров проекта и
т.д.
Format – служит для выбора другого набора инструментов для
компановки элементов управления на поле экранной формы.
Debug – для отладки и редактирования программы
Run – для проверки работоспособности программы, путем ее
выполнения.
Tools – для установки различных режимов работы (опций).
Add-Ins – для расширения программной оболочки Visual
Basic, путем предоставления дополнительных возможностей и
удобств.
Windows – служит для изменения расположения окон проекта,
для переключения между окнами.
Help – встроенная помощь и учебник по Visual Basic.
Помимо основного окна в редакторе Visual Basic есть еще 9
окон (мы будем использовать в основном 5 из них):
окно проводника проекта (Project Explorer), в котором
отображается состав компонент открытого проекта (по умолчанию
оно открыто и находится в левой части окна редактора);
окно формы (UserForm) для создания пользовательских форм;
окно (панель) инструментов (Toolbox), где показан набор
пиктограмм, представляющих элементы управления, которые
могут использоваться в разрабатываемом приложении;
24.12.16
2
окно свойств (Properties), в котором перечислены свойства
(параметры) выбранного объекта, которые можно быстро изменить
непосредственно в этом окне;
окно кодов (Code), в котором непосредственно будет
записываться программа, т.е. набор операторов данного языка
программирования.
Примечание. Если при запуске Visual Basic, необходимое окно
отсутствует, его необходимо активизировать, выполнив
соответствующую команду из меню View.
2 Формы, элементы управления и события
При разработке большого приложения бывает необходимо
создать его графический интерфейс, позволяющий вести удобный
диалог с пользователем.
Чаще всего для предоставления пользователю графического
интерфейса используются формы VBA.
Форма (Form) – это окно будущего приложения. В процессе
разработки приложения эта форма служит как бы холстом, на
котором Вы рисуете различные части программы – объекты, или
элементы управления: окна, списки, кнопки, переключатели,
линейки прокрутки.
В принципе, многие элементы управления можно вставлять
непосредственно на страницу документа с помощью панели
Элементы управления. Однако классический способ – это
применение форм. Хотя надо отметить, что независимо от того, где
размещаются элементы управления, приемы работы с ними
одинаковы.
Как выглядит применение форм в приложении VBA? Обычно
форма запускается при открытии пользователем документа.
Пользователь выполняет на форме какие-то действия по вводу или
выбору информации (например, выбирает значения в
раскрывающемся списке, устанавливает значения для флажков и
переключат Элементы управления панелей и т.д.), а потом, как
правило, нажимает кнопку на этой форме, и введенная им
информация передается в базу данных, отправляется по электронной
почте, записывается в файл для распечатки и т.д.
3 Создание форм. Их свойства и методы
Для создания формы необходимо войти в редактор VBA:
СервисМакросРедактор Visual Basic
И затем выбрать:
24.12.16
3
InsertUserForm
Появится окно формы:
И рядом с ним Toolbox – панель с набором элементов
управления.
Элементы управления – это специализированный объект,
который можно размещать на формах VBA (или непосредственно в
документах) и которые используются для взаимодействия с
пользователем. Создаются они на основе шаблонов, которые
находятся в окне инструментов (Toolbox). Таким образом, Вы
создаете «лицо» своей программы, выбирая из окна инструментов
нужные элементы управления и размещая их на форме.
Для удаления объекта с формы, используют клавишу Del, либо
контекстное меню, предварительно выделив объект.
24.12.16
4
4 Основы работы с объектами
Объекты в VBA поддерживают свойства, методы и события.
Каждый объект можно связать с набором процедур,
исполняемых в строго определенные моменты.
Процедура (Procedure) – это группа операторов в языке
программирования VBA. Исполняется процедура – исполняются и
ее операторы.
Процедура, присвоенная объекту, связана с определенным
событием или действием и поэтому называется процедурой
обработки событий. Событиями считаются, например, Click
(щелчок) – это действие вызывается щелчком кнопки мыши,
DblClick (двойной щелчок), или Resize (изменение размера) – оно
возникает при изменении размера окна формы, KeyPress (нажатие
клавиши) - оно возникает при нажатии какой-либо клавиши, Load
(загрузка в память ).
События происходят в период выполнения, но не
проектирования.
Например:
Private Sub TextBox1_DblClick()
…
End Sub
Private Sub CommandButton1_Click()
…
End Sub
В объявлении процедуры ключевое слово Sub (сокращение от
subroutine - подпрограмма) означает начало процедуры. Ему
предшествует слово Private, то есть используемая только на данной
форме. Если процедура будет использоваться и в других формах
проекта приложения, то заголовок процедуры должен начинаться со
слова Public, что по смыслу означает доступная для других форм.
Далее следует имя процедуры, которое состоит из имени
объекта и имени события, разделенные знаком подчеркивания, и
наконец (). В скобках при необходимости могут записываться
параметры процедуры.
Состояние любого объекта можно изменять с помощью
свойств, либо с помощью методов «воздействия», которые можно к
нему применять.
Характеристики объекта можно изменять, изменяя значения
его свойств. Некоторые свойства могут быть установлены в период
24.12.16
5
разработки через окно свойств. Другие можно изменять в
программном коде.
Для задания конкретных значений для свойств объекта
используют следующий синтаксис:
объект.свойство = значение
где данный объект связывается с описывающим его
«состояние» свойством через точку без пробелов. Например, можно
задать заголовок окна (свойство Caption) формы с именем
UserForm1 в программном коде следующим образом (при
написании программного кода регистр букв не играет роли):
UserForm1.Caption = “Список сотрудников”
В текстовое окно внести следующее имя отчество:
TextBox1.Text=”Иванова Светлана”
Изменить заголовок командной кнопки:
CommandButton1. Caption=”Задача”
Изменить размер шрифта на командной кнопке:
UserForm1.Caption.Font.Size = 14
Сделать текстовое окно видимым, а метку – невидимым:
TextBox1.Visible=True
Label1.Visible= False
Если необходимо выяснить состояние объекта, т.е. получить
значения его свойств, используют следующий синтаксис:
Переменная = объект.свойство
Например, можно узнать значения свойства Text текстового
поля:
Tl = TextBox1.Text
Создадим 3 объекта:
24.12.16
6
Label1
TextBox1
CommandButton1
Изменим их свойства: для метки и командной кнопки –
Caption, чтобы изменить надпись, для формы – Picture, чтобы
вставить рисунок, BackColor, чтобы изменить цвет и т.д.
Для командной кнопки напишем процедуру:
Private Sub CommandButton1_Click()
Tl = TextBox1.Text
TextBox1.Text = "Привет" & Tl & "!"
End Sub
После запуска программы (запуск осуществляется после
нажатия на кнопку Run (F5)), вводим в текстовое окно имя и
щелкаем по кнопке «Приветствие». В результате получим:
Методы – это действия, которые требуется выполнить.
Формат записи операторов с методом зависит от того, сколько
параметров принимает процедура метода и возвращает ли метод
значение. Если метод не требует параметров, используется
следующий синтаксис:
объект.метод
Например, чтобы показать Фому используют метод Show, чтобы
спрятать метод Hide:
UserForm1. Show
UserForm1. Hide
Если метод требует параметры, то они перечисляются через
запятую:
24.12.16
7
объект.метод аргументы
Например для элемента управления комбинированный список
ComboBox:
ComboBox1. AddItem “Visual Basic”
-добавить к списку текст Visual Basic
Элемент ComboBox позволяет пользователю выбирать
готовые значения из списка и вводить значения самостоятельно.
Пример: При щелчке по командной кнопке добавить в
комбинированный список темы изучаемые в семестре.
Создадим 3 объекта:
Label1
ComboBox1
CommandButton1
Изменим соответствующие свойства в окне свойств. Для
командной кнопки напишем следующую процедуру:
Private Sub CommandButton1_Click()
ComboBox1.AddItem "Visual Basic"
ComboBox1.AddItem "Excel"
ComboBox1.AddItem "Word"
End Sub
В результате получим:
24.12.16
8
Пример: С помощью элемента управления Флажок (их часто
называют «Птички» или «галки»), осуществить выбор и вывод на
форму соответствующей картинки (Деда мороза, ракеты или
будильника). Щелкая по командной кнопке – вывести в текстовое
окно подписи соответствующих рисунков.
Создадим на форме следующие элементы управления:
CommandButton1
3 объекта Image3– рисунок
3 объекта CheckBox – флажок
Изменим их свойства с помощью окна свойств согласно
образцу:
24.12.16
9
Причем для объектов Image3 установим свойство Visible =
False
Для объектов CheckBox напишем следующие процедуры:
Private Sub CheckBox1_Click()
Image1.Visible = True
Image2.Visible = False
Image3.Visible = False
End Sub
Private Sub CheckBox2_Click()
Image2.Visible = True
Image3.Visible = False
Image1.Visible = False
End Sub
Private Sub CheckBox3_Click()
Image3.Visible = True
Image1.Visible = False
Image2.Visible = False
End Sub
Информатика - еще материалы к урокам:
- Жолдық шамаларды және жиымдарды пайдаланып есеп шығару
- Самостоятельная работа "Программное обеспечение" 8 класс
- Ответы к Контрольной работе "Математические основы информатики" 8 класс
- Контрольная работа "Математические основы информатики" 8 класс
- Презентация "Решение задач на использование циклических конструкций" 8 класс
- Технологическая карта урока "Решение задач на использование циклических конструкций" 8 класс