Помощничек
Главная | Обратная связь


Археология
Архитектура
Астрономия
Аудит
Биология
Ботаника
Бухгалтерский учёт
Войное дело
Генетика
География
Геология
Дизайн
Искусство
История
Кино
Кулинария
Культура
Литература
Математика
Медицина
Металлургия
Мифология
Музыка
Психология
Религия
Спорт
Строительство
Техника
Транспорт
Туризм
Усадьба
Физика
Фотография
Химия
Экология
Электричество
Электроника
Энергетика

Создание процедур обработки событий элементов управления, встроенных в рабочие листы Excel



На рабочие листы, так же как и формы, можно встраивать элементы управления и назначать им процедуры обработки событий. Не теряя общности, в данном разделе речь будет идти об элементе управления Кнопка.

Итак, создадим кнопку на рабочем листе Лист1,нажатие которой будет приводить к активизации рабочего листа Лист2.Первоначально выберем рабочий лист Лист1.Затем переведем программу Excel в режим конструктора элементов управления. Для этого нажмем кнопку Режим конструктора панели инструментов Элементы управления. Далее выбираем на этой панели кнопку и расположим его в любом месте рабочего листа Лист1. Элемент управленияКнопкаявляется объектом, т.е. он, как и любой объект, обладает свойствами, методами и событиями. Надпись, отображаемая на поверхности элемента управленияКнопка,задается значение свойства Caption. Кроме того, Элемент управленияКнопкаимеет свойство Name, которое в коде идентифицирует его как объект. В данном случае оно равно CommandButton1. Изменим значение свойства Caption на Лист2. Для этого нажмем кнопку Свойства панели инструментов Элементы управления. На экране отобразиться окно Properties. Введем в поле Caption этого окна значение Лист2 .

Теперь перейдем к созданию кода процедуры, обрабатывающей событие – нажатие на кнопку. В результате обработки этого события должен активизироваться рабочий лист Лист2. Для этого дважды щелкнем на созданной кнопке (напоминаем, что все это происходит в режиме конструктора). В результате откроется редактор VBA с активизированным модулем рабочего листа (в данном случае Лист1). Кроме того, двойной щелчок на кнопке создает в модуле первую и последнюю инструкции процедуры обработки события – нажатие кнопки:

Private Sub Commandbutton1_Click()

 

End Sub

Теперь, нам пригодится ранее созданный макрос (см. раздел “ Работа с макрорекордером”). Из его кода видно, что активизацией рабочего листа управляет одна конструкция:

Sheets ("Лист2").Select

Добавив ее в нашу процедуру мы получим:

Private Sub Commandbutton1_Click ()

Sheets ("Лист2").Select

End Sub

Процедура создана. Осталось вернуться на рабочий лист Литс1.Созданная кнопка будет обрабатывать событие нажатия на нее только после выхода из режима конструктора. Поэтому отключим режим конструктора нажатием кнопки Режим конструктора панели инструментов Элементы управления.

Задание5

В качестве упражнения и закрепления создайте на рабочем листеЛист1 еще одну кнопку, которая будет активизировать рабочий лист Лист3.

Задание 6

Создайте на рабочем листе Лист1 кнопку. В стандартном модуле проекта создайте функцию F(x)=x2+x3 . Введите в ячейку A1 рабочего листаЛист1число. Требуется при нажатии на созданную кнопку вычислить значение функции F(x) от аргумента, введенного в ячейку А1 и поместить результат в ячейку С1.

Код стандартного модуля:

Function F(x)

F = x ^ 2 + x ^ 3

End Function

Код модуля рабочего листа Лист1:

Private Sub CommandButton1_Click ()

With Worksheets ("Лист1")

. Range ("C1"). Value = F (.Range ("A1"))

End With

End Sub

 

Операторы управления VBA

В VBA имеется несколько операторов управления ходом выполнения программы. Функционально они делятся на три группы операторов:

1. Перехода и выбора (GoTo; If – Then – Else; Select Case)

2. Повтора (For – Next; Do Until – Loop; While – Wend)

3. With – End With

Оператор If – Then – Else задает выполнение определенных групп инструкций в зависимости от значения выражения. Синтаксис:

If – Условие Then Инструкция – [Else Инструкция]

Допустимо использование блочной формы:

If Условие Then

Инструкция

Else

Инструкция

End If

Если нужно проверить несколько условий, необходимо применить оператор выбора Select Case, выполняющий одну из нескольких групп инструкций, в зависимости от значения выражения. Синтаксис:

Select Case Выражение

Case Метка 1

Инструкции

Case Метка 2

Инструкции

…………………

Case Метка n

Инструкции

[Case Else

Инструкции] End Select

Оператор For – Next повторяет выполнение группы инструкций указанное число раз. Синтаксис:

For Счетчик=Начало То Конец [Step шаг]

Инструкции

Next [Счетчик]

Оператор While - Wend выполняет последовательность инструкций, пока заданное условие имеет условие true. Синтаксис:

While Условие

Инструкции

Wend

Оператор Do Until – Loop повторяет выполнение набора инструкций пока условие не примет значение true:

Do until Условие

Инструкции

Loop.

 




Поиск по сайту:

©2015-2020 studopedya.ru Все права принадлежат авторам размещенных материалов.