Заполнение объектов ListBox, расположенных на листе Excel
Создание объектов ListBox на листе Excel организуется следующим образом:
1. Выбратьв верхнем горизонтальном меню “Вид”;
2. Выбрать в подменю “Панель инструментов”;
3. Выбрать в подменю “Элементы управления”.
Затем с панели Элементы управления на лист Excel , рис. 10.9, , последовательно переместить:
четыре объекта ListBox;
три объекта CommandButton ,
расположив их, как показано на рис. 10.9.
Рис. 10.9.
Далее войти в VBA (Alt-F11), выбрать объект CommandButton 1.
Затем,выбрав, объект CommandButton 1, написать соответствующую программу, обеспечивающую заполнение данными объектов ListBox 1, ListBox 2, ListBox 4, ListBox 5.
Программа Заполнение объектов ListBox, расположенных на листе Excel
Private Sub CommandButton1_Click()
Dim s(1 To 5, 1 To 3) As String
Dim i As Integer, j As Integer
'Заполнение списка поэлементно, 1 колонка
With ListBox1
.AddItem " Июнь "
.AddItem " Июль "
.AddItem " Август "
.AddItem " Сентябрь "
End With
'Заполнение списка массивом, 1 колонка
With ListBox 2
. List = Array ("январь", "февраль", "март", "апрель", "май", "июнь", "июль", "август", "сентябрь", "октябрь", "ноябрь", "декабрь")
End With
'Заполнение списка поэлементно, несколько колонок
s(1, 1) = "N": s(1, 2) = " Ф . И . О .": s(1, 3) = " Оценка ":
s(2, 1) = "1": s(2, 2) = " Петров ": s(2, 3) = "5"
s(3, 1) = "2": s(3, 2) = " Сидоров ": s(3, 3) = "2"
s(4, 1) = "3": s(4, 2) = " Иванов ": s(4, 3) = "3"
|
|
s(5, 1) = "4": s(5, 2) = " Ромашкин ": s(5, 3) = "4"
With ListBox4
.ColumnCount = 3
.List = s
End With
'Заполнение списка массивом, несколько колонок
With ListBox 5
.ColumnCount = 3
.AddItem " июнь "
.List(0, 1) = "06"
.List(0, 2) = "30"
.AddItem " июль "
.List(1, 1) = "07"
.List(1, 2) = "31"
.AddItem " август "
.List(2, 1) = "08"
.List(2, 2) = "31"
.AddItem " сентябрь "
.List(3, 1) = "09"
.List(3, 2) = "30"
End With
End Sub
Private Sub CommandButton2_Click()
ListBox1.Clear
ListBox2.Clear
ListBox4.Clear
ListBox5.Clear
End Sub
Private Sub CommandButton3_Click()
Sheets(" лист 0").Select
End Sub
Некоторые комментарии к программе:
– В модуле Private Sub CommandButton 1_ Click (), программно поддерживающем объект CommandButton 1, реализуются те же программы, что и в модуле программно поддерживающем объект CommandButton 1 раздела 10.1.
– В модуле Private Sub CommandButton 1_ Click (), программно поддерживающем объект CommandButton 1, не реализуется способ заполнения объекта ListBox “из диапазона”, то есть объект ListBox3 – отсутствует;
– В модуле Private Sub CommandButton 2_ Click (), программно поддерживающем объект CommandButton 2, который в свойстве Caption переименован в “Очистить”,к объекту ListBox 1 применен метод . Clear , с помощью которого осуществляется удаление элементов списка, анлогично операции применяются к элементам списков объектов ListBox 2, ListBox 4 и ListBox 5;
|
|
– В модуле Private Sub CommandButton 3_ Click (), программно поддерживающем объект CommandButton 3, который в свойстве Caption переименован в “Меню”,к объекту Sheets применен метод . Select , с помощью которого выполняется переход на лист оглавления всего пакета.
Часть вторая
Табулирование функций в объектах ListBox
При решении задач табулирования функций в объектах ListBox создаваемые объекты ListBox можно размещать, как на специально созданных объектах UserForm, так и на листах Excel, используя при этом для вызова и табуляции кнопки (объекты CommandButton ).
Создание пользовательской формы c объектом ListBox организуется следующим образом:
1. Войти в VBA – Alt - F 11;
2. Выбрать Insert (вставка);
3. Выбрать UserForm .
Затем на появившуюся “платформу” объекта UserForm с панели Toolbox, рис. 9.4, последовательно переместить:
один объект ListBox;
три объекта Label;
три объекта TextBox;
три объекта OptionButton;
два объекта CommandButton ,
расположив их, как показано на рис. 10.10.
Рис. 10.10.
Далее войти в VBA (Alt-F11), выбрать объект UserForm .
Затем,выбрав, объект CommandButton 1, написать соответствующую программу, обеспечивающую табуляцию функций в объекте ListBox 1.
|
|
Дата добавления: 2019-03-09; просмотров: 636; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!