Оператор End

Заканчивает процедуру или блок.

Синтаксис

End
End Function
End If
End Property
End Select
End Sub
End Type
End With

Синтаксис оператора End состоит из следующих форм:

Statement Описание
End Сразу же прекращает выполнение. Никогда не требуется сам по себе, но может быть размещен в любом месте процедуры для завершения выполнения кода, закрытия файлов, открытых с помощью инструкции Open , и для очистки переменных.
End Function Требуется для завершения инструкции Function .
End If Требуется для завершения блока Если... Затем... Оператор Else .
End Property Требуется для завершения процедуры Property Let, Property Get или Property Set .
End Select Требуется для завершения инструкции Select Case .
End Sub Требуется для завершения инструкции Sub .
End Type Требуется для завершения определения определяемого пользователем типа (оператор Type ).
End With Требуется для завершения инструкции With .

Замечания

При выполнении оператор End сбрасывает все переменные на уровне модуля и все статические локальные переменные во всех модулях. Чтобы сохранить значение этих переменных, используйте вместо этого инструкцию Stop . Вы сможет затем возобновить выполнение, сохранив значение этих переменных.

Примечание.

Оператор End резко останавливает выполнение кода, не вызывая событие Unload, QueryUnload или Terminate или любой другой код Visual Basic. Код, помещенный в события Unload, QueryUnload и Terminate форм и модулей класса, не выполняется. Объекты, созданные из модулей класса, уничтожаются, файлы, открытые с помощью инструкции Open , закрываются, а память, используемая программой, освобождается. Ссылки на объекты, удерживаемые другими программами, становятся недопустимыми.

Оператор End предоставляет способ заставить программу остановиться. Для нормального прекращения работы программы Visual Basic следует выгрузить все формы. Программа закроется, как только не будет других программ, удерживающих ссылки на объекты, созданные из модулей открытого класса, и не будет выполняться код.

Пример

В этом примере оператор End используется для завершения выполнения кода, если пользователь вводит недопустимый пароль.

Sub Form_Load 
  Dim Password, Pword 
  PassWord = "Swordfish" 
  Pword = InputBox("Type in your password") 
  If Pword <> PassWord Then 
    MsgBox "Sorry, incorrect password" 
    End
  End If
End Sub

См. также

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.