Resume 陳述式

在錯誤處理常式完成之後繼續執行。

建議您盡可能在程式碼中使用結構化例外狀況處理,而非使用非結構化例外狀況處理以及 On Error 和 Resume 陳述式。 如需詳細資訊,請參閱 Try...Catch...Finally 陳述式。

語法

Resume [ Next | line ]  

組件

Resume
必要。 如果錯誤發生在與錯誤處理常式相同的程序中,則執行會繼續執行,並顯示造成錯誤的陳述式。 如果所呼叫的程序中發生錯誤,則執行會在最後呼叫包含錯誤處理常式之程序的陳述式上繼續執行。

Next
選擇性。 如果錯誤發生在與錯誤處理常式相同的程序中,則會在造成錯誤的陳述式後面立即使用陳述式繼續執行。 如果所呼叫的程序中發生錯誤,則會在最後呼叫包含錯誤處理常式 (或 On Error Resume Next 陳述式) 之程序的陳述式後面立即使用陳述式繼續執行。

line
選擇性。 執行會在必要 line 引數中所指定的行繼續。 line 引數是行標籤或行號,而且必須與錯誤處理常式位於相同的程序中。

備註

注意

建議您盡可能在程式碼中使用結構化例外狀況處理,而非使用非結構化例外狀況處理以及 On Error 和 Resume 陳述式。 如需詳細資訊,請參閱 Try...Catch...Finally 陳述式。

如果您在錯誤處理常式中以外的任何位置使用 Resume 陳述式,則會發生錯誤。

Resume 陳述式不能用於包含 Try...Catch...Finally 陳述式的任何程序中。

範例

此範例使用 Resume 陳述式來結束程序中的錯誤處理,然後使用造成錯誤的陳述式來繼續執行。 產生錯誤碼 55,以說明 Resume 陳述式的使用。

Sub ResumeStatementDemo()
  On Error GoTo ErrorHandler   ' Enable error-handling routine.
  Dim x As Integer = 32
  Dim y As Integer = 0
  Dim z As Integer
  z = x / y   ' Creates a divide by zero error
  Exit Sub   ' Exit Sub to avoid error handler.
ErrorHandler:     ' Error-handling routine.
  Select Case Err.Number   ' Evaluate error number.
      Case 6   ' "Divide by zero" error.
        y = 1 ' Sets the value of y to 1 and tries the calculation again.
      Case Else
        ' Handle other situations here....
  End Select
  Resume   ' Resume execution at same line
  ' that caused the error.
End Sub

需求

命名空間:Microsoft.VisualBasic

組件:Visual Basic 執行階段程式庫 (在 Microsoft.VisualBasic.dll 中)

另請參閱