End Sub
End Select
End Sub
End Select
Case Else
Next
MsgBox "У Вас есть доступ ко всем листам этой книги."
Case"Ievel2"
ActiveWorkbook.Worksheets(1). _
Visible = True
ActiveWorkbook.Worksheets(1).Unprotect
MsgBox "У Вас есть доступ только к 1-му листу книги."
Case"Ievel3"
ActiveWorkbook.Worksheets(l). _
Visible = True
MsgBox "Вам доступен для чтения первый лист."
MsgBox "Пароль введен неверно. Попробуйте ещё раз!"
Ниже описаны компоненты инструкции Select Case, использованной в программе SelectCase.
Компонент | Описание |
Select Case | Ключевые слова, отмечающие начало инструкции |
Password | Переменная или выражение, значение которых определяет выбор фрагмента кода для выполнения. Оно должно совпадать со значением, указанным после одного из ключевых слов Case. Если ни одного совпадения нет, выполняется фрагмент, написанный после слов Case Else. Если и этих слов нет, управление передается инструкции, заданной после End Select |
Case"levell" | Первый вариант значения. Если значение определяющего выражения совпадает с ним, выполняется фрагмент кода до следующего ключевого слова Case, а затем управление передается инструкции, написанной после End Select. Если совпадения нет, управление передается следующей инструкции Case |
Case"level2" | Второй вариант значения. Действует так же, как Case "levell" |
Case"level3" | Третий вариант значения. Действует так же, как Case "levell" |
Case Else | Фрагмент кода, указанный за этими словами, выполняется, если значение определяющего выражения не совпало ни с одним из предыдущих вариантов Case |
End Select | Ключевые слова, отмечающие конец инструкции Select Case |
В программе SelectCase2 также использована структура Select Case, несколько отличающаяся от предыдущего примера:
Sub SelectCase2()
Dim Score As Integer
Score = Int(100 * Rnd())
Select Case Score
Case 0 To 33
MsgBox "Счет: " & Score & Chr(13) & _
"Вы в первой тройке."
Case34To66
MsgBox "Счет: " & Score & Chr(13) & _
"Вы во второй тройке."
Case 67 To 100
MsgBox "Счет: " & Score & Chr(13) & _
"Вы в третьей тройке."
Здесь для выполнения фрагмента кода значение определяющего выражения должно попадать в определенный интервал, границы которого, разделенные словом То, указаны после ключевого слова Case.
Встроенная функция Chr принимает один аргумент – число от 0 до 255 – и возвращает соответствующий символ ASCII. Chr(13) возвращает символ перевода строки, который в информационном окне приводит к переносу текста сообщения на новую строку.