- •Лабораторная работа №1 Элементы управления пользовательская форма (vba)
- •Элементы управления
- •Режим конструктора
- •Установка свойств элемента управления
- •Редактор кода
- •Пользовательская форма UserForm
- •Семейство Controls
- •Создание пользовательской формы
- •Свойства элементов управления Поле
- •Надпись
- •Заполнение списка
- •Выбор нескольких элементов из списка
- •Поле со списком
- •Полоса прокрутки и счетчик
- •Переключатель
- •Флажок и выключатель
- •Ссылки на ячейки и диапазоны
- •Набор страниц
- •Набор вкладок
- •Дополнительные элементы управления
- •Отображение встроенных диалоговых окон
- •Индивидуальные задания
Пользовательская форма UserForm
Пользовательская форма UserFormпредоставляет пользователю возможноть создавать диалоговые окна разрабатываемых приложений. Она служит базой пользовательского диалогового окна, на которой в зависимости от решаемой задачи размещают требуемые элементы управления.
Семейство UserFormsявляется семейством, компоненты которого представляют все загруженные формыUserFormв приложении. Как и все семействаUserFormsимеет свойстваCount(возвращает число компонентов в семействе) иItem(возвращает определенный компонент семейства), а также методAdd(добавляет к семейству новый компонент).
Приведем основные свойства, методы и события пользовательской формы. Наиболее часто используемые свойства объекта UserForm:
Name |
Возвращает имя пользовательской формы; |
Caption |
Возвращает текст, отображаемый в строке заголовка формы; |
BackColor |
Возвращает цвет фона формы; |
BorderStyle |
Устанавливает тип границы; |
Picture |
Указывает рисунок, отображаемый как фон формы; |
LeftиTop |
Возвращают местоположение верхнего левого угла формы в пунктах; |
HeightиWidth |
Возвращают высоту и ширину формы в пунктах; |
StartUpPosition |
Возвращает значение, определяющее положение формы при ее первом отображении на экране. Допустимые значения:
|
Наиболее часто используемые методы объекта UserForm
Show |
Отображает форму на экране |
Hide |
Закрывает форму |
Move |
Изменяет положение и размер формы |
PrintForm |
Печатает изображение формы |
Основные события объекта UserForm
Initilize |
Происходит при отображении формы на экране |
Terminate |
Происходит при закрытии формы |
Семейство Controls
Доступ к семейству всех элементов управления, расположенных в пользовательской форме UserForm, осуществляется с помощью семействаСontrols. Например, чтобы скрыть все элементы управления формыUserForm, можно использовать код, в котором свойствуVisibleэлемента управления, определяющему, отображается ли этот элемент на экране или нет, устанавливается значениеFalse:
For Each Элемент in UserForm1.Controls
Элемент.Visible=False
Next Control
Создание пользовательской формы
Обсудим процесс создания пользовательской формы на примере конструирования простейшего диалогового окна.
Шаг 1 |
Выберите команду Сервис, макрос, Редактор Visual Basic (Tools,Macro,VisualBasic) для того, чтобы перейти в редакторVisual Basic; |
Шаг 2 |
Выберите команду Вставить UserForm(InsertUserForm). В редакторе Visual Basic появятся:
|
Рис.6. Окно редактора Visual Basicс пользовательской формой и панелью инструментов
Шаг 3 |
Используя диалоговое окно Свойства(Properties), отображаемое нажатием кнопкииПанель элементов(Toolbox), создайте из пользовательской формы диалоговое окно, показанное на рис.7. Это окно состоит из трех кнопок и одного поля. СвойствоCaptionпользовательской формы определите равнымАктивизация процедур, а кнопок – равными Процедура №1,Процедура №2,Процедура №3. |
Шаг 4 |
Для того чтобы написать процедуру обработки события нажатия кнопки Процедура №1, дважды щелкните ее. Активизируется модульUserForm1, в который введите процедуру: Private Sub CommandButton1_Click() TextBox1.Text=”Активизирована процедура №1” End Sub Для обработки событий нажатий кнопок Процедура №2иПроцедура №3в модулеUserForm1введите следующие две процедуры: Private Sub CommandButton2_Click() TextBox1.Text=”Активизирована процедура №2” End Sub Private Sub CommandButton3_Click() TextBox1.Text=”Активизирована процедура №3” End Sub |
Шаг 5 |
Процесс создания диалогового окна и процедур, связанных с ним, завершен. Для того чтобы проверить, как работает созданная программа, нажмите кнопку Запуск подпрограммы/UserForm(Run). На экране на фоне рабочего листа отобразится диалоговое окноАктивизация процедур. Для проверки функционирования кнопок нажмите, например, кнопкуПроцедура №1. В поле выведется сообщениеАктивизирована процедура №1 (рис.7). |
Рис.7. Редактор Visual Basicс преобразованной пользовательской формой для создаваемого приложения