Основы офисного программирования и язык VBA


Еще раз о "переиспользовании" модулей - часть 3


Call MoveSelectedItems(ListBox2.ColumnCount, ListBox2, ListBox1) End Sub

Private Sub CommandButton5_Click() 'Обработчик события Click кнопки "OK" 'Перенос данных из списка на лист Excel 'В область, заданную ячейкой с именем "Dom"

Call MoveListToRange(ListBox2.ColumnCount, ListBox2, "Dom") Me.Hide End Sub

Private Sub CommandButton6_Click() 'Обработчик события Click кнопки "Cancel" Me.Hide End Sub

Private Sub ListBox1_Enter() 'Обработчик события Enter, возникающего при получении фокуса

CommandButton1.Caption = ">" CommandButton2.Caption = ">>" End Sub

Private Sub ListBox2_Enter() 'Обработчик события Enter, возникающего при получении фокуса

CommandButton1.Caption = "<" CommandButton2.Caption = "<<" End Sub

Private Sub UserForm_Initialize() 'Обработчик события Initialize формы TwoListsForm 'Заполнение списка ListBox1

Dim MyArray(1 To 5, 1 To 2) As String

MyArray(1, 1) = "Петров" : MyArray(1, 2) = "Музыкант" MyArray(2, 1) = "Сергеев" : MyArray(2, 2) = "Учитель" MyArray(3, 1) = "Гурина" : MyArray(3, 2) = "Актриса" MyArray(4, 1) = "Водкин" : MyArray(4, 2) = "Художник" MyArray(5, 1) = "Козина" : MyArray(5, 2) = "Геолог"

ListBox1.ColumnCount = 2 : ListBox2.ColumnCount = 2 ListBox1.List() = MyArray End Sub

Пример 2.1.

Модуль TwoListsForm, связанный с формой, содержит 9 обработчиков событий, возникающих при работе с самой формой - ее инициализации, так и при работе пользователя с объектами, населяющими форму. Каждый из обработчиков выполняет свои специфические задачи. Когда пользователь переключается на работу с элементами левого или правого списка, то в тот момент, когда список получает фокус, возникает событие Enter. Обработчик события Enter изменяет заголовок у соответствующих командных кнопок, подготавливая, тем самым, передачу данных в нужном направлении. Такое автоматическое изменение направления передачи позволяет уберечь пользователя от ошибочных действий.


Начало  Назад  Вперед