Технология выполнения

§ Активизируйте приложение Word, сохраните документ под именем Case.

§ Перейдите в редактор VBA и создайте форму.

§ Пропишите обработчик кнопки «Результат».

Dim a, b, c, d As Integer

Private Sub CommandButton1_Click()

a=Val(TextBox1.Text)

b=Val(TextBox2.Text)

c=Val(TextBox3.Text)

Select Case a

Case 5

d=b + c

Label4.Caption=«Результат: d=» & d

Case 0

d=– b – c

Label4.Caption=«Результат: d=» & d

Case 10

d=b * c

Label4.Caption=«Результат: d=» & d

Case Else

Label4.Caption=«Введено не то значение»

End Select

End Sub

Форма примера в режиме конструктора

Для того чтобы программа работала корректно, необходимо перевести все текстовые значения, которые вводятся в текстовые поля, в числовые. Для этого прописывают в коде преобразование: a=Val(TextBox1.Text) и так далее После чего программа уже работает с числовыми значениями.

Если программа в итоге выдает значение одного типа (числовое или строковое), то строку вывода результата можно прописывать по окончании всего блока Case. В данном примере сначала выводятся числовые значения (d), а затем строковое («Введено не то значение»). Поэтому вывод результата необходимо предусмотреть в каждой ветке Case.

Результаты работы показаны на рисунке.

Некоторые результаты работы формы примера

Пример

Создать программу, которая, используя пользовательское диалоговое окно (форму), выполняет следующие действия: при вводе трех переменных в текстовые поля она считывает данные и сравнивает с первой переменной а. Результат выдается в метку на форме.

Форма примера в режиме конструктора и в рабочем состоянии

Листинг примера

Private Sub CommandButton1_Click()

Dim a, b, c As Integer

a=Val(TextBox1.Text)

b=Val(TextBox2.Text)

c=Val(TextBox3.Text)

If a > b And a > c Then

Label1.Caption=«Значение а > b и a >c»

Else

Label1.Caption=«Значение а не всегда больше b и с» End If End Sub

Пример

Создать программу, которая, используя форму, выполняет следующие действия: при вводе переменной в текстовое поле она считывает данное значение а, после чего организует цикл for с шагом, равным 5, где при каждом шаге значение переменной b становится равным значению переменной а плюс шаг изменения. Итоговое значение с суммирует полученное значение b и введенное значение а. Результат выдается в метку на форме.

Форма примера в режиме конструктора и в рабочем состоянии

Листинг примера

Dim a As Variant

Dim b As Integer

Dim c As Integer

Private Sub CommandButton1_Click()

a=Val(TextBox1.Text)

For i=1 To 12 Step 5

b=a + i

c=a + b

Next i

Label1.Caption=a & "+" & b & "=" & c

End Sub

Пример.

Создать программу, которая выполняет следующие действия: организованный цикл for each присваивает переменной b, объявленной в программе, последнее значение массива, также определенного программой. После этого происходят вычисления, предложенные в программе:

§ в метку label2 выдается результат увеличения полученной переменной на значение первого элемента массива;

§ в метку label3 выдается результат увеличения полученной суммы на значение второго элемента массива;

§ в метку label4 выдается результат увеличения полученной суммы на значение третьего элемента массива;

§ в метку label6 выдается результат увеличения полученной суммы на значение последнего элемента массива.

Результат выдается для наглядности в различные метки на форме.

Форма примера в режиме конструктора и в рабочем состоянии

Листинг примера

Dim b As Variant

Private Sub CommandButton1_Click()

Dim d(1 To 4) As Variant

d(1)=15

d(2)=0

d(3)=-10

d(4)=25

For Each b In d

b=d(1) + b

Label2.Caption=«d(1)=» & d(1) & «b=» & b

b=d(2) + b

Label3.Caption=«d(2)=» & d(2) & «b=» & b

b=d(3) + b

Label4.Caption=«d(3)=» & d(3) & «b=» & b

b=d(4) + b

Label6.Caption=«d(4)=» & d(4) & «b=» & b

Next b

End Sub

Примечание. For Each … Next не использует счетчик цикла. Циклы For Each … Next выполняются столько раз, сколько имеется элементов в определенной группе, такой как коллекция объектов или массив. Другими словами, цикл For Each … Next выполняется один раз для каждого элемента в группе. Вследствие чего данный цикл используется в основном в специфических действиях, таких как поиск необходимого листа в коллекции объектов и так далее, и не используется при решении простых задач.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: