Select Case Res
Dim N as integer
Static Var1 As String
Public Var1 As String
Иногда переменную, используемую в одной подпрограмме, удобнее описать, как статическую. В отличие от стандартного описания, статическая переменная при новом входе в процедуру, где она используется, сохраняет значение, полученное на предыдущем входе в процедуру:
Массивы это индексированная группа значений одного типа. Описание массивов имеет вид:
Dim NumberArray(10) As Integer – описание одномерного массива
Dim TableArray(10,10) As String – описание двумерного массива.
Нижняя граница массивов в аналогичных описаниях - это 1. Если массив описывается типом Variant, то элементы массива могут иметь разный тип данных. Например, опишем двумерный массив для хранения фамилии, возраста и даты рождения 10 человек:
Dim Mas(10,3) as Variant
Mas(1,1) = “Петров”
Mas(1,2) = 20
Mas(1,3) = #3/06/1982#
При описании динамического массива размер не задается – его можно задать в любой момент времени при выполнении модуля. Динамические массивы используют, когда размер массива может изменяться во время выполнения программы.
Dim Data() As Variant
ReDim Data(2) – массив переопределен, как одномерный массив из 2-х элементов
ReDim Data(4,2) – массив переопределен, как двумерный.
Функция Array позволяет задавать массив без предварительного его описания:
Data=Array(“Петров”, 20, #3/06/82#)
Для определения верхней и нижней границы массива используют функции LBound и Ubound. Например, чтобы вывести нижнюю границу массива можно написать:
Dim Data(4,2)
MsgBox Lbound(Data)
Константы – это элементы, не меняющие свое значение во время выполнения подпрограммы. Чтобы описать константу:
Сonst m as integer = 1
Константы не могут быть массивами, а в остальном они ведут себя как переменные, значение которых нельзя изменять.
Операторы управления.
IF – THEN – ELSE используется для изменения хода выполнения программы в зависимости от результатов проверки условия.
N = Int (10*Rnd())
If N=7 Then
MsgBox “Вы выиграли. Ваше число - ” & N
Else
MsgBox “Вы проиграли. Ваше число - ” & N
End If
FOR – NEXT – позволяет организовать выполнение некоторых действий определенное число раз. Например, программа высчитывает 5!
Res = 1
For I=1 To 5 Step 1
Res =ResI*I
Next
WHILE – WEND – позволяет выполнять некоторые действия, пока заданное условие имеет значение True.
Res = 10
While Res > 0
Res = Res-1
Wend
SELECT CASE – переключает выполнение программы на один из нескольких возможных участков кода в зависимости от значения переменной.
Case 4 To 5
MsgBox “Вы показали замечательный результата”
Case 3
MsgBox “Вам нужно позаниматься”
Case 1 To 2
MsgBox “Придется прослушать курс повторно!”
Case Else
MsgBox “Других оценок не бывает”
End Select
FOR – EACH – NEXT – позволяет перебирать все объекты семейства или элементы массива и выполнить одни и те же действия над каждым объектом или элементом.
Пусть нужно распечатать одномерный массив Country, в котором записаны названия стран.