Application.EnableCancelKey 属性 (Excel)
控制 Microsoft Excel 如何处理 Ctrl+Break (或 Esc 或 Command+Period) 用户对正在运行的过程中断。 XlEnableCancelKey 可读写。
语法
表达式。EnableCancelKey
expression:表示 Application 对象的变量。
备注
XlEnableCancelKey 可以是以下常量之一:
- xlDisabled。 完全禁用“取消”键捕获功能。
- xlErrorHandler。 中断作为错误发送到正在运行的过程,可由使用 On Error GoTo 语句设置的错误处理程序捕获。 可捕获的错误代码为 18。
- xlInterrupt。 中断当前运行程序,用户可进行调试或结束程序的运行。
使用此属性时应非常小心。 如果使用 xlDisabled,则无法中断失控循环或其他非自终止代码。 同样,如果使用 xlErrorHandler ,但错误处理程序始终使用 Resume 语句返回,则无法阻止失控代码。
只要 Microsoft Excel 返回空闲状态并且没有程序处于运行状态,EnableCancelKey 属性都会重置为 xlInterrupt。 若要在程序运行中捕获或者禁用取消过程,则每次在程序被调用时必须明确更改 EnableCancelKey 属性。
示例
本示例显示可使用 EnableCancelKey 属性设置自定义取消处理程序的方法。
On Error GoTo handleCancel
Application.EnableCancelKey = xlErrorHandler
MsgBox "This may take a long time: press ESC to cancel"
For x = 1 To 1000000 ' Do something 1,000,000 times (long!)
' do something here
Next x
handleCancel:
If Err = 18 Then
MsgBox "You cancelled"
End If
支持和反馈
有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。