End 语句

结束过程或块。

语法

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 LetProperty GetProperty 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 支持和反馈,获取有关如何接收支持和提供反馈的指南。