![]() Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву ![]() Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Создание формы с ComboBox и ListBoxСодержание книги Поиск на нашем сайте
Откроем новый рабочий лист Excel. Перейдем в редактор Visual Basic (Alt+F11) и выберем в меню «Вставка» команду UserForm. В появившейся диалоговой форме разместим два элемента управления ComboBox (Поле со списком) и один элемента управления ListBox (Список). Добавим к этим элементам надписи (Label) «Компания», «Адрес» и «Контактный телефон» соответственно. Также добавим кнопки с названиями ОК и Close (Рисунок 5.6).
Создадим процедуру отклика кнопки Close, которая закрывала бы уже открытую форму. Для этого два раза щелкнем по кнопке и запишем в окне редактирования кода следующее:
Private Sub CommandButton2_Click() Me.Hide End Sub
Рисунок 5.6 — Форма UserForm3 с размещенными
на ней элементами управления На рабочем листе в ячейках А1, В1 и С1 напишем заголовки «Компания», «Город» и «Телефон», а ниже введем 9 соответствующих значений (название компании, местонахождение и контактный телефон).
Затем выделив поочередно массивы этих значений и выбрав в контекстном меню команду Присвоить имя … или вызвав Диспетчер имен (Ctrl+F3),зададим массивам имена соответственно «Company», «City» и «Tel» (Рисунок 5.7).
Рисунок 5.7 — Присвоение имен группам ячеек на листе Excel
Свяжем эти ячейки с элементами управления ComboBox1 и ComboBox2 формы UserForm3. Для этого в их Свойствах укажем в поле RowSource имя соответствующего массива ячеек («Company» и «City»). Теперь создадим процедуру отклика при нажатии на кнопку ОК. Алгоритм предлагается следующий. Пользователь выбирает в окнах Компания и Адрес соответствующие значения и нажимает на ОК. Если компания находится по этому адресу, то в окне Контактный телефон появляется ее номер телефона,если нет,то появляется информационное сообщение о том, что такой компании не существует.
Для этого два раза щелкнем по кнопке ОК в форме User-Form3 в редактореVBAи запишем в окне редактирования следующий код
Private Sub CommandButton1_Click() 'Очистить поле ListBox
Me.ListBox1.Clear flag = 0 ' Цикл по строкам столбцов Компания и Адрес и проверка того,
' соответствуют ли введенные (или выбранные) компании и их адреса ' без учета пробелов в именах (функция Trim) тому, что записано в таблице.
' Если совпадение, то в ListBox заносится соответствующий номер телефона
For i = 1 To 9
If Trim(ComboBox1.Text) = Cells(i + 1, 1) And _ Trim(ComboBox2.Text) = Cells(i + 1, 2) Then
Me.ListBox1.AddItem Cells(i + 1, 3) flag = 1 End If
Next i 'Если соответствия названия компании и адреса не найдено, 'то вывод предупреждающего сообщения If flag = 0 Then MsgBox " Компании " + Trim(ComboBox1.Text) + _ " в городе " + Trim(ComboBox2.Text) + " нет! " End If End Sub
Теперь создадим макрос запуска нашей формы (переименуем ее в Поиск контактного телефона). Для этого в новом модуле «Module3» вставим процедуру:
Public Sub Find()
With UserForm3 Show End With End Sub
Затем создадим на листе Excel кнопку Найти и назначим этой кнопке макрос Find.
Протестируем работу макросов (Рисунок 5.8, 5.9).
Рисунок 5.8 — Положительный результат поиска
|
|||||||||
Последнее изменение этой страницы: 2020-11-11; просмотров: 364; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.145.76.111 (0.009 с.) |