Введение
VBA (Visual Basic for Applications) – это объектно-ориентированный язык программирования, который основан на синтаксических формах и операторах языка Visual Basic.
VBA входит в состав всех базовых, общеизвестных офисных программных приложений, что даёт возможность манипулирования их объектами, применяя их способы и свойства.
В VBA, аналогично большинству языков программирования, все приложения, в которых есть интерфейс пользователя, реализуются на базе специальных средств, а именно, пользовательских или экранных форм. Пользовательские формы позволяют пользователям формировать различные диалоговые окна в проектируемых программных приложениях и помещать в этих окнах компоненты, предназначенные для управления.
Создание пользовательских форм в VBA
Как уже отмечалось выше, VBA является объектно-ориентированным языком программирования, поэтому следует сначала дать определение понятию объекта. Объектом являются базовые компоненты языка VBA, к которым следует отнести рабочую книгу, рабочий лист, а также его элементы, к примеру:
- Sheet, что означает лист, например в языке Excel, где тоже присутствует VBA.
- Cell, что означает ячейка.
- Range, что означает диапазон ячеек.
- Application, что означает приложение.
- UserForm, что означает пользовательская форма.
- CommandButton, что означает кнопка, и другие.
Над объектами могут выполняться разные операции. Действия над объектами возможны через их свойства и методы. Методами являются действия, которые совершаются над объектами. К примеру, ячейка или совокупность ячеек в форме диапазона могут быть очищены (Clear), могут быть выбраны (Select), приложения могут быть закрыты (Quit), Так же может быть показана пользовательская форма (Show) или же она может быть скрыта (Hide).
Наименование метода должно отделяться от наименования объекта точкой:
Наименование объекта . наименование метода
Приведём примеры применения методов относительно объектов:
- Range("B2:E2").Select. Осуществление выбора диапазона ячеек B2:E2.
- Range("C1:C5").Clear. Осуществление очистки диапазон ячеек C1:C5.
- UserForm2.Hide. Сокрытие формы, имеющей номер два.
- UserForm5.Show. Выполнить показ формы с номером пять.
- Application.Quit. Выполнить выход из приложения.
Свойства предназначены для описания, назначения параметров объектов, таких как, размер и цвет шрифта, расположение формы на дисплее или состояние объекта, задания значений. Для задания или изменения характеристик объекта, необходимо поменять значение его свойств, то есть задать ему некоторые значения.
Синтаксис задания значения свойства имеет следующий вид:
Объект. Свойство = Значение Свойства.
Здесь:
- «Объект» является обозначением имени объекта.
- «Свойство» является именем свойства, которому будет присвоено значение.
Событием является действие, к примеру, это может быть щелчок указателем мыши или нажатие кнопки, то есть реакция объекта на происходящее событие. В программном языке VBA для всех объектов существует определённая совокупность стандартных событий. К примеру, стандартным событием для объекта CommandButton (командная клавиша) является Click, то есть щелчок мышью. Когда пользователь жмёт на клавишу, то это считается событием. На данное событие предусматривается определённый отклик, то есть осуществление какой-нибудь процедуры или программы. Эта процедура именуется процедурой реакции на событие и должна иметь наименование. В случае, когда отклик не сформирован, то есть не определена необходимая процедура, то система не должна реагировать на данное событие.
При работе в различных приложениях, пользователи сталкиваются с такими интерфейсными компонентами, как диалоговые окна. Диалоговые окна применяются практически везде для того, чтобы получить информацию, а также для ввода и вывода сообщений и информационных данных.
Одним из объектов визуализации в VBA считаются пользовательские формы, т о есть UserForm. Пользовательские формы (UserForm) являются диалоговыми окнами интерфейса процедур VBA. Используя эти формы, пользователь получает возможность эффективной передачи данных в процедуры, и воспринимать итоги их выполнения.
При помощи пользовательских форм можно выполнять создание диалоговых окон в проектируемых программных приложениях и осуществлять размещение в этих окнах компонентов управления. В VBA имеется пара функций, а именно, MsgBox и InputBox, позволяющие отобразить простые версии диалоговых окон, без создания пользовательских форм. Данные окна пользователь может подвергнуть видоизменению с применением управляющих ими параметров, однако они не обладают такими обширными и эффективными возможностями, а также опциями, которые присутствуют в пользовательских формах. VBA предоставляет широкий набор возможностей, которые используются при формировании пользовательских диалоговых окон, а также для программирования компонентов управления.
Для создания пользовательской формы следует открыть редактор Visual Basic, нажав комбинацию клавиш (Alt + F11) или выбрав на ленте вкладку «Разработчик», а в ней Visual Basic. В появившемся окне Microsoft Visual Basic следует сделать выбор на ленте вкладки Insert, а затем в открывшемся меню осуществить выбор UserForm. На дисплее проявится пустая форма UserForml и панель инструментов Toolbox, как показано на рисунке ниже:
Рисунок 1. Окно программы. Автор24 — интернет-биржа студенческих работ
Если нажать правую клавишу мышки, то появится контекстное меню со свойствами формы (Properties).
В состав инструментальной панели Toolbox входят следующие компоненты управления, являющиеся объектами VBA:
- TextBox, что означает поле.
- Label, то есть, надпись.
- CommandButton, то есть клавиша.
- ListBox, то есть, список.
- ComboBox, то есть, поле со списком.
- Другие компоненты.
Каждый из данных компонентов управления может быть размещён на форме.