Resume 陳述式

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

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

語法

Resume [ Next | line ]  

組件

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

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

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

備註

注意

建議您盡可能在程式碼中使用結構化例外狀況處理,而非使用非結構化例外狀況處理以及 On ErrorResume 陳述式。 如需詳細資訊,請參閱 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 中)

另請參閱