![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
Этот оператор производит разбор случаев и в зависимости от значения анализируемого выражения выбирает и исполняет одну из последовательностей операторов.
Его синтаксис:
Select Case Выражение-тест
[Case Список выражений -n]
[операотры-n]
[Case Else
[Иначе-опреаторы]]
End Select
Выражение-тест должно присутствовать обязательно. Оно может быть произвольным выражением с числовым или строковым значением. Список-Выражений-n должен присутствовать в строке, начинающейся ключевым словом Case (Случай). выражения в этом списке отделяются запятыми и могут иметь одну из форм:
- Выражение;
- выражение-нижняя граница To выражение-верхняя граница;
- Is оператор-сравнения выражение.
Перавая форма задает отдельные значения, вторая и третья позволяют задавать сразу целые диапазоны (области значений). Последовательность операторов операторы-n необязательна. Она будет исполнена, если соответствующий список-Выражений-n является первым списком, сопоставимым с текущим значением Выражения-теста (он явно содержит это значение, либо оно попадает в один из заданных в списке диапазонов). после исполнения операторов последовательности операторы-n проверка на соответствие другим спискам выражений не производится, и управление передается на оператор, следующий за EndSelect. Необязательная последовательность ЕслиОператоры выполняется, если ни один из списков выражений несопоставим со значением Выражения-теста.
Пример:
Public Sub Case1()
Dim Before AsInteger
Dim CurrentYear As Integer,Str As String
' Инициализация переменных:
CurrentYear=2000
Before=InputBox("Сколько лет тому назад?", "Когда", 10)
Select Case CurrentYear-Before
Case 1954 To 1969, 1971 To 1974, 1982, Is < 1970
Str="Годы учебы"
Case 1972 To 1989
Str="Годы воспитания"
Case Else
Str="Прочие годы"
End Select
Debug.Print Str
End Sub
Здесь если перед выполнением выбора Before=20, значением тестового выражения будет 1979, и будет работать второй вариант ("Годы воспитания"). При Before=25 значение 1974 сопоставимо с двумя списками, но для исполнения будет выбран лишь первый вариант ("Годы учебы").
Диапазоны значений можно задать и для строк. При этом их значения считаются упорядоченными лексографически. Например, возможен такой список выражений:
Case "everything", "nuts" To "soup".
Задаваемое им множество строк включает строку "everything" и все строки от "nuts" до "soup" (например, "onion").
Дата публикования: 2015-02-18; Прочитано: 321 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!