
Лаб. раб. VBA / оператор выбора
.docОператор выбора (переключатель)
С помощью оператора выбора VBA можно выбрать вариант из любого количества вариантов. Параметром, по которому осуществляется выбор, служит ключ выбора.
Структура оператора выбора:
Select Case <ключ_выбора>
Case
Значение_1
<Оператор1>
список
выбора
<Оператор2>
.…………………
Case Значение_n (константа)
<Оператор n>
End Select
где
Select, Case, End - зарезервированные слова VBA (выбирать, случай,
конец);
<ключ_выбора> - переключатель варианта (некоторое выражение);
<список_выбора> - одна или более конструкций вида: <константа_выбора>
<оператор>;
Значение_n - <константа_выбора> того же типа,
что и выражение <ключ_выбора>;
<операторы> - произвольные операторы VBA, выполняемые
при совпадении Значения_n и значения
ключа_выбора.
Работа оператора выбора.
Вначале вычисляется значение выражения <ключ_выбора>, а затем в последовательности операторов <список_выбора> отыскивается такой, которому предшествует константа, равная вычисленному значению. Найденный оператор выполняется, после чего оператор выбора завершает свою работу. Если в списке выбора не будет найдена константа, соответствующая вычисленному значению ключа выбора, управление передается операторам, стоящим за End Select.
В операторе Select Case можно использовать операции отношения. Для этого надо включить в выражение ключевое слово Is или ключевое слово To.
Ключевое слово Is дает указание компилятору сравнить значение проверяемой переменной со значением выражения, следующего за ключевым словом Is.
Ключевое слово To задает диапазон значений.
Пример 1.
Постановка задачи. Составить пользовательскую подпрограмму процедуру, расшифровывающую количество баллов за полученный ответ по введенному числу с клавиатуры.
Технология выполнения задания:
1. Исходные данные:
х Z.
2.Набрать в стандартном модуле проекта следующую пользовательскую процедуру:
Sub DemoSelect ()
Dim x As Integer
x = InputBox ("введите целое число")
Select Case x
Case 8 To 10
MsgBox ("Отлично")
Case 6 To 7
MsgBox ("Хорошо")
Case 4 To 5
MsgBox ("Удовлетворительно")
Case Is < 4
MsgBox ("Неудовлетворительно")
End Select
End Sub
3. Запустить подпрограмму-процедуру.
Примечание. Процедура MsgBox выводит на экран диалоговое окно, содержащее сообщение для пользователя.