Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методические указания ИПС новая1.doc
Скачиваний:
5
Добавлен:
01.05.2025
Размер:
1.34 Mб
Скачать

3. Создание процедур обработки событий элементов управления, встроенных в рабочие листы 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. Созданная кнопка будет обрабатывать событие нажатия на нее только после выхода из режима конструктора. Поэтому отключим режим конструктора нажатием кнопки Режим конструктора панели инструментов Элементы управления.

Задание 4

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

Задание 5.

Создайте на рабочем листе Лист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