Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Программирование в VBA на MS Excel.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
1.4 Mб
Скачать

Лабораторная работа №5. Массивы элементов управления. Создание кнопочных форм

Время выполнения

6 часов

Цель работы

Научиться использовать язык программирования Visual Basic for Applications (VBA) для разработки модулей в Excel на основе циклических алгоритмов с использованием методов сортировок.

Задачи лабораторной работы

После выполнения данной работы студент должен знать и уметь:

  • знать все операторы, используемые в программах;

  • уметь применять любые из изученных операторов для написания своих модулей;

  • уметь объяснить написанную программу.

Перечень обеспечивающих средств

Для обеспечения выполнения работы необходимо иметь компьютер со следующим математическим обеспечением: операционная система Windows XP, электронные таблицы Excel с приложением в виде языка Visual Basic for Applications.

Общие теоретические сведения

См. лекции «Основы создания форм в VBA»

Калькулятор

Создадим приложение-калькулятор, который должен иметь следующий вид:

Левое верхнее текстовое поле предназначено для отображения вводимых цифр, а правое - для показа выбранного знака.

Заготовка:

1. Два текстовых поля с именами Text1 и Text2 для ввода чисел и знака операции. У них свойство Enabled поставьте равным False, чтобы их нельзя было изменять.

2. Кнопки для обработки математических действий: сложения – cmdAdd, вычитания – cmdSubtrac, умножения – cmdMultiplic, деления – cmdDivis, возведения в квадрат – cmdExponent, извлечение квадратного корня – cmdExtrac, получения числа обратного данному – cmdInverse и получения результата – cmdResult.

3. Для ввода чисел необходимо составить в массив элементов управления из 10-ти командных кнопок (нумерация начинается с нуля). Для этого поставьте на форму командную кнопку с именем – cmdNumber, скопируйте её в буфер обмена и, вставляя на форму, изменяйте значения свойства Caption новой командной кнопки в соответствии со свойством Index.

Теперь пишем код:

Вводим две переменные, для присвоения им значений, которые мы введем на калькуляторе

Dim a As String

Dim b As String

При нажатии на кнопку с определенной цифрой она отображается в текстовом поле №1.

Private Sub cmdNumber_Click(Index As Integer)

'При нажатии на кнопку с цифрой "1", в текстовом поле появится "1"

Text1.Text = Text1.Text & CStr(Index) ' "1"

End Sub

Private Sub cmdMultiplic_Click()

'После нажатия на "*", присваиваем переменной "а" из текстового поля №1

а = Text1.Text

' В маленькое текстовое поле, пишем знак "*"

Text2.Text = "*"

' Очищаем текстовое поле №1.

Text1.Text = ""

End Sub

Private Sub cmdSubtrac_Click()

После нажатия на "-", присваиваем переменной "а" число из текстового поля №1

а = Text1.Text

Text2.Text = "-"

Text1.Text = ""

End Sub

Private Sub cmdDivis_Click()

После нажатия на "/" присваиваем переменной "а" число из текстового поля №1

а = Text1.Text

Text2.Text = "/"

Text1.Text = ""

End Sub

Private Sub cmdResult_Click()

'При нажатии на "=", присваиваем переменной "b" второе значение, но тоже из текстового поля №1

b = Text1.Text

'Смотрим, какой знак б текстовом поле №2 и делаем нужное действие

If Text2.Text = "*" Then

Text1.Text = a * b

End If

If Text2.Text = "/" Then

Text1.Text = a / b

End If

If Text2.Text = "-" Then

Text1.Text = a - b

End If

End Sub

Командная кнопка cmdClear сбрасывает все введённые значения:

Private Sub cmdClear_Click()

Очищаем текстовые поля

Text1.Text = "" Text2.Text = ""

End Sub

Не достающие процедуры составьте самостоятельно. Калькулятор готов к использованию.

Можно сделать калькулятор в другой форме.

<38>