Private Sub CommandButton1_Click()
Dim L, a, x As Integer
Range(Cells(5, 1), Cells(25, 7)) = Clear
d = InputBox (" D =", "Введите диапазон игры")
Cells (5, 2) = "Ну, что ж играем, угадай число X в диапазоне от 0 до " + CStr ( d )
Randomize
x = Round(d * Rnd())
L = 0: i = 10: j = 2
10 a = InputBox (" x =", "Введите Ваш вариант")
L = L + 1: i = i + 1
If x > a Then
Cells ( i , j ) = "Загаданное число X больше Вашего числа " + CStr ( a )
GoTo 10
End If
If x < a Then
Cells ( i , j ) = "Загаданное число X меньше Вашего числа " + CStr ( a )
GoTo 10
End If
If x = a Then
Cells ( i , j ) = "Да, это число " + CStr ( a ) + ", Угадал, за " + CStr ( L ) + " попыток"
Cells(1, 1).Select
Exit Sub
End If
End Sub
Рис. 8.1
Некоторые комментарии к программе:
– В программе реализована, так сказать, только основа алгоритма;
– Можно добавить нижнюю границу диапазона;
– Выполнить требования грамматики русского языка и с помощью условных операторов, считающих количество попыток, согласовать ответы программы;
–Ввести предложение сыграть еще и т.д.
ПОЛЬЗОВАТЕЛЬСКИЕ ФОРМЫ
Целью лабораторной работы является приобретение навыков практического использования объектов Userform, Textbox, Label, CheckBox, OptionButton и других.
Рекомендуется созданные пользовательские формы объединять и активизировать с помощью кнопочного меню, рис. 9.1, 9.2.
Рис. 9.1
Каждая кнопка меню обеспечивает вызов соответствующего объекта Userform , например:
Private Sub CommandButton2_Click()
|
|
UserForm1.Show
End Sub
Кнопка 2 вызывает калькулятор 1, использующий для выбора арифметических операций объекты OptionButton, 9.3.
Калькулятор с OptionButton
Создание пользовательской формы организуется следующим образом:
1. Войти в VBA – Alt - F 11;
2. Выбрать Insert (вставка);
3. Выбрать UserForm.
Рис. 9.2
Рис. 9.3
Затем на появившуюся “платформу” объекта UserForm с панели Toolbox, рис. 9.4, последовательно переместить:
три объекта Label;
три объекта Textbox;
пять объектов OptionButton;
два объекта CommandButton ,
расположив их, как показано на рис. 9.3.
Если будут использоваться объекты Frame (рамка), рис. 9.3, два из которых переименованы в “Исходные данные” и “Арифметические действия”, то необходимо помнить правило:
Объекты помещаются в Frame , а не Frame “одевается” на объекты!
Далее открыть модуль, программно поддерживающий объект CommandButton 1 (в свойстве Caption переименованный в “Вычислить”), объекта UserForm и написать программу, обеспечивающую организацию взаимодействия выбранных объектов для получения результатов при выбранных арифметических операциях.
Рис. 9.4
Программа калькулятора с OptionButton
Private Sub CommandButton1_Click()
If Not IsNumeric(TextBox1) Or Not IsNumeric(TextBox2) Then
|
|
MsgBox "Исходные данные введены неверно или не полностью!", , "Введите числа"
Exit Sub
End If
A = CDbl(TextBox1)
B = CDbl(TextBox2)
If OptionButton1 = True Then TextBox3 = A + B
If OptionButton2 = True Then TextBox3 = A - B
If OptionButton3 = True Then
If B <> 0 Then TextBox3 = A / B Else TextBox3 = " На ноль не делим !"
End If
If OptionButton4 = True Then TextBox3 = A * B
If OptionButton5 = True Then
If (A = 0) And (B <= 0) Then TextBox3 = " Недопустимые значения !" Else TextBox3 = A ^ B
End If
End Sub
Дата добавления: 2019-03-09; просмотров: 303; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!