Пример оператора Select Case
Пример оператора Select Case
Здесь явно не помешает пример, показывающий, как в действительности может выглядеть структура Select Case.
Select Case objRol l OfFi l m.Type
Case "Слайдовая"
intСлайдовые = intСлайдовые + 1
Case "Цветная негативная"
intЦветныеНегативные = intЦветныеНегативные + 1
Case "ЧБ негативная"
intЧБнегативные = intЧБнегативные + 1
.Case Else
MgaBox "Неизвестный тип пленки."
End Select
В основном этот фрагмент программного кода делает то же, что и приведенный выше программный код для примера из раздела об операторах If. . .ElseIf (опущена только проверка срока хранения). Правда, с тех пор наш гипотетический объект, представляющий ролик пленки, похоже, был немного модифицирован - информация о цветностибесцветности пленки теперь тоже представляется свойством Туре, а не отдельным свойством Color, как раньше.
А если дело обстоит таким образом, то программе приходится работать только с одним значением - со значением, возвращаемым свойством Туре. - но сравнивается это значение с несколькими из допустимых. Так что Select Case - это как раз то, что для нашего случая доктор прописал.
Первое применение оператора Case в данном примере эквивалентно применению If objRollOf Film.Type = "Слайдовая" Then, т.е. если свойство Туре объекта равно "Слайдовая", то программа выполняет следующий оператор, в противном случае она перейдет ко второму оператору Case.
Заметьте, что знака операции, присутствие которого кажется на первый взгляд логичным, в критериях нет. Причина в том, что в операторах Select Case равенство в качестве операции сравнения просто подразумевается.