结束过程或块。
语法
End 
End Function 
End If 
End Property 
End Select 
End Sub 
End Type 
End With
End 语句语法具有以下形式:
| 语句 | Description | 
|---|---|
| End | 立即终止执行。 本身从不需要,但可以放置在过程中的任意位置,以结束代码执行、关闭使用 Open 语句打开的文件以及清除 变量。 | 
| End Function | 结束 Function 语句所必需的。 | 
| End If | 结束块 所必需的 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 支持和反馈,获取有关如何接收支持和提供反馈的指南。