2012-07-16 75 views

回答

6

你要做的就是錯誤處理。

看到這個例子。您可以使用陷阱Err.Number

Sub Sample() 
    On Error GoTo Whoa 

    '~~> Rest of the code 

    Exit Sub 
Whoa: 
    Select Case Err.Number 
     Case 9 
      MsgBox "Message1" 
     Case 1004 
      MsgBox "Message2" 
    End Select 
End Sub 

隨訪

Sub Sample1() 
    On Error GoTo Whoa 

    '~~> Rest of the code 

    Exit Sub 
Whoa: 
    MsgBox GetErrMsg(Err.Number) 
End Sub 

Sub Sample2() 
    On Error GoTo Whoa 

    '~~> Rest of the code 

    Exit Sub 
Whoa: 
    MsgBox GetErrMsg(Err.Number) 
End Sub 

Function GetErrMsg(ErNo As Long) As String 
    Select Case ErNo 
     Case 9 
      GetErrMsg = "Message1" 
     Case 1004 
      GetErrMsg = "Message2" 
     Case Else 
      GetErrMsg = "Message3" 
    End Select 
End Function 
+0

甜和簡單,代碼的最佳類型的錯誤號,謝謝:)只有一個問題,這是否必須進入每個部分,或者可以創建它自己的模塊? – 2012-07-16 14:47:16

+0

它必須進入每個部分。但你可以寫一個通用的程序,你想要做什麼例如...看到更新的代碼... – 2012-07-16 15:17:58

+0

再次感謝,正是我需要的:) – 2012-07-16 16:01:30