Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка по VBA.doc
Скачиваний:
2
Добавлен:
01.03.2025
Размер:
2.47 Mб
Скачать

Практическое упражнение.

Создадим экранную форму Калькулятор, которая могла бы производить основные арифметические действия. Окончательный вид нашей разработки показан на рис. 5.3.

Для выполнения этого задания, выполните последовательно следующие этапы:

  1. Перейдите в редактор VBA и откройте окно проекта, если до этого оно было закрыто.

Р ис. 5.3

  1. Добавьте в проект новую форму. Присвойте свойству Name и Caption данного объекта значение "Калькулятор".

  2. Добавьте в форму три поля ввода (TextBox) и расположите их как показано на рис. 5.3. Присвойте им соответственно следующие имена: "txt1", "txt2" и "txtResult". Установите для этих объектов следующие значения свойств:

txt1 Value = 0

txt2 Value = 0

txtResult Value = 0

Enabled = False

  1. Добавьте в форму четыре переключателя (OptionButton). Установите для этих объектов следующие значения свойств:

OptionButton1 Name = Сложение

Caption = " + "

Value = True

OptionButton2 Name = Вычитание

Caption = " - "

OptionButton3 Name = Деление

Caption = " / "

OptionButton4 Name = Умножение

Caption = " * "

  1. Добавьте в форму кнопку (CommandButton) и установите для нее значения следующих свойств:

CommandButton Name = Выход

Caption = Выход

При нажатии данной кнопки будет осуществляться выход из нашего Калькулятора. Для этого нам необходимо связать некоторый код с событием Click этого объекта. Щелкните два раза на этой кнопке левой клавишей мыши и в открывшимся окне модуля введите следующую процедуру:

Private Sub Выход_Click()

Калькулятор.Hide

End Sub

  1. Добавьте в форму кнопку (CommandButton) и установите для нее значения следующих свойств:

CommandButton Name = Вычислить

Caption = Вычислить

При нажатии данной кнопки, в поле txtResult будет выводиться результат вычислений. Код программы, для события click данного объекта выглядит следующим образом:

Private Sub Вычислить_Click()

Dim x As Variant

Dim y As Variant

Dim z As Variant

x = CDbl(txt1.Value)

y = CDbl(txt2.Value)

If Сложение.Value = True Then z = x + y

If Вычитание.Value = True Then z = x - y

If Умножение.Value = True Then z = x * y

If Деление.Value = True Then

If y = 0 Then

z = 0

MsgBox ("Деление на ноль !!!")

Else

z = x / y

End If

End If

txtResult.Value = CStr(z)

End Sub

  1. Добавьте в форму надписи (Label), в соответствии с рисунком 5.3.

В принципе, мы уже выполнили нашу цель. Можете теперь запустить эту форму на выполнение и поэкспериментировать. Однако, при работе в Excel, было бы очень неудобно каждый раз, когда нам нужно воспользоваться калькулятором, запускать редактор VBA. Гораздо проще было бы, если бы на рабочем листе Excel была кнопка, при нажатии на которую активизировалась бы наша форма.

Для этого выполните следующую последовательность действий:

  1. Закройте окно редактирования формы и создайте модуль (команда главного меню Вставка/Модуль).

  2. В открывшемся окне модуля введите следующий фрагмент кода:

Sub RunForm()

Калькулятор.Show

End Sub

  1. Перейдите в Microsoft Excel и выберите тот лист рабочей книги, на который мы будем добавлять кнопку запуска калькулятора.

  2. При добавлении любого элемента управления на лист рабочей книги, нам необходимо воспользоваться панелью инструментов Формы. Чтобы вывести ее на экран, выберите в главном меню команду Вид/Панели инструментов/Формы.

  3. Добавьте на рабочий лист элемент управления Кнопка. При этом автоматически активизируется окно Назначить макрос объекту. Т. е. мы должны указать, какая выполнится подпрограмма, при нажатии на данную кнопку. Выбираем из списка макрос RunForm и нажимаем клавишу ОК.

  4. Закроем панель инструментов Формы.

Теперь, когда возникнет необходимость выполнить какие-либо расчеты, мы просто нажмем кнопку на рабочем листе Excel.