With объект
оператор1
оператор2
операторN
End with
Например, вместо последовательности операторов UserForml.TextBoxl.Text = Date
UserForml.TextBox2.Text = " "
UserForml. Label1. Caption = " "
UserForml.Label2. Caption = "Название"
можно записать так
With UserForm1
.TextBoxl.Text = Date
.TextBox2.Text = " "
.Labell.Caption = ""
.Label2. Caption = "Название"
End with
Условный оператор If/Then/Else - позволяет проверить некоторое условие и в зависимости от результатов проверки выполнить то или иное действие.
Синтаксис:
Ifусловие Thenоператоры 1 [Elseоператоры2]
Если условие истинно, то выполняются первый блок операторов, в противном случае выполняются второй блок операторов.
Пример
If A>=B Then A=A*2 Else b=b*2
Rem если А больше или равно В, то удваивается значение числовой переменной А, а если А меньше В, удваивается значение числовой переменной В.
Допускается также использование формы синтаксиса в виде блока:
If условие Then
операторы 1
Else
операторы2
End If
Примеры
REM Рассчитаем сумму, которую должен заплатить клиент за сеанс игры в большой теннис. Если клиент постоянный, то ему предоставляется скидка 5%. Флажок номер один фиксирует клиент постоянный или нет. Стоимость одного часа составляет 600 руб. Сеанс может длиться несколько часов.
' Сумма - оплата за сеанс
' Стоимость сеанса хранится в переменной Стоимость
'Часы указывают сколько длился сеанс
IfUserForml. CheckBox1. Value = True Then
Сумма=Стоимость*Часы-Стоимость*Часы*0,05
Else Сумма=Стоимость*Часы
End If
В этом примере - первые строки, начинающиеся со слова Remи апострофов, - это комментарии, объясняющие назначения переменных. С помощью условного оператора определяется сумма, выплачиваемая клиентом.
Оператор безусловного перехода GoToпредназначен для задания перехода на указанную строку внутри программы.
Синтаксис:
GoToСтрока
Обязательный аргумент Строка может быть любой меткой строки или номером строки.
Пример
If IsNumeric(TextBoxl.Text)=False Then GoToОшибка
Ошибка:
MsgBox "Ошибка при вводе чисел!"
В приведенном примере выполняется проверка введения числа в поле ввода номер один. Если введено не число, то осуществляется переход на строку с меткой Ошибка, и на экран выводится сообщение.
Оператор цикла For/To/Nextпредназначен для программирования повторяющихся фрагментов, т.е. для описания циклических алгоритмов. Существуют две разновидности операторов цикла: оператор цикла с фиксированным числом повторений и операторы цикла с переменным числом повторений, зависящим от условий.
Синтаксис:
Forпеременная=М1 То М2 [Step МЗ]
Операторы
Next
где:
Ml, M2, МЗ - выражения. Оператор цикла повторяет выполнение группы операторов, пока переменная (счетчик) изменяется от начального значения Ml до конечного М2 с указанным шагом МЗ. Если шаг не указан, то он полагается равным 1.
Пример
Sum=0
ForI=1 То31
Sum=Sum+ Sheets("Температура").Cells(I,1)
Next
ST=Sum/31
В приведенном примере предполагается, что на листе «Температура» в первом столбце записаны показатели температур за июль месяц. Надо рассчитать среднюю температуру за месяц.
Оператор цикла While(переменное число повторений)
Синтаксис:
Whileусловие
Операторы
Loop
Все операторы будут выполняться между Whileи Loopдо тех пор, пока условие будет истинным. Если при входе в цикл условие ложно, то операторы выполняться не будут.
Пример
RemУдвоение числовых переменных массива А с четными номерами индексов.
Dim A(10) as Byte, i as Byte
i=0
Whilei<10
i=i+2: A(i)=A(i)*2
Loop
II. Выполните задания, следуя технологии.