Advertisement
Guest User

Untitled

a guest
May 6th, 2015
219
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.86 KB | None | 0 0
  1. Option Explicit
  2.  
  3. Private Sub errorHandler_429()
  4.  
  5. Dim uErrorMsg1 As String
  6. Dim uErrorMsg As String
  7. Dim errCount As Long
  8.  
  9. uErrorMsg1 = "Click OK to try again."
  10.  
  11. On Error GoTo ErrorHandler
  12.  
  13. restart:
  14.  
  15. ' code that triggers an error here
  16. Err.Raise 429 ' <-- For testing
  17. 'Err.Raise 430 ' <--- For testing
  18.  
  19. ExitRoutine:
  20.  
  21. Exit Sub
  22.  
  23. ErrorHandler:
  24.  
  25. Select Case Err.Number
  26.  
  27. Case 429
  28.  
  29. errCount = errCount + 1
  30.  
  31. uErrorMsg = Err.Number & ": " & Err.Description & " occurred " & errCount & " times."
  32.  
  33. Debug.Print uErrorMsg
  34.  
  35. If (errCount Mod 200) = 0 Then
  36. uErrorMsg = uErrorMsg1 & vbCr & vbCr & _
  37. "Error # " & Err.Number & " was generated by " & _
  38. Err.Source & Chr(13) & Chr(13) & Err.Description
  39.  
  40. Debug.Print uErrorMsg
  41.  
  42. If MsgBox(uErrorMsg, vbOKCancel, "errorHandler_429", Err.HelpFile, Err.HelpContext) = vbOK Then
  43. Resume restart
  44. Else
  45. Resume ExitRoutine
  46. End If
  47.  
  48. Else
  49. Resume restart
  50.  
  51. End If
  52.  
  53. Case Else
  54.  
  55. uErrorMsg = Err.Number & ": " & Err.Description
  56. 'Debug.Print uErrorMsg
  57.  
  58. MsgBox uErrorMsg, , "errHandler_429", Err.HelpFile, Err.HelpContext
  59. Resume ExitRoutine
  60.  
  61. End Select
  62.  
  63. End Sub
  64.  
  65. Sub errHandler_Description()
  66.  
  67. ' Where the error number is negative and inconsistent
  68.  
  69. Dim uErrorMsg1 As String
  70. Dim uErrorMsg As String
  71. Dim errCount As Long
  72.  
  73. Dim LErrDesc As String
  74.  
  75. uErrorMsg1 = "Click OK to try again."
  76.  
  77. On Error GoTo ErrorHandler
  78.  
  79. restart:
  80.  
  81. ' code that triggers an error here
  82. Err.Raise 429 ' <--- For testing
  83. 'Err.Raise 430 ' <--- For testing
  84.  
  85.  
  86. ExitRoutine:
  87. Exit Sub
  88.  
  89. ErrorHandler:
  90.  
  91. LErrDesc = Left(Err.Description, 51)
  92. Debug.Print " LErrDesc: " & LErrDesc
  93.  
  94. Select Case LErrDesc
  95.  
  96. Case "ActiveX component can't create object"
  97.  
  98. errCount = errCount + 1
  99. Debug.Print " errCcount: " & errCount
  100.  
  101. If (errCount Mod 200) = 0 Then
  102. uErrorMsg = uErrorMsg1 & vbCr & vbCr & _
  103. "Error # " & Err.Number & " was generated by " & _
  104. Err.Source & Chr(13) & Chr(13) & Err.Description
  105.  
  106. 'Debug.Print uErrorMsg
  107.  
  108. If MsgBox(uErrorMsg, vbOKCancel, "errHandler_Description", Err.HelpFile, Err.HelpContext) = vbOK Then
  109. Resume restart
  110. Else
  111. Resume ExitRoutine
  112. End If
  113.  
  114. Else
  115. Resume restart
  116.  
  117. End If
  118.  
  119. Case Else
  120.  
  121. uErrorMsg = "This error has not been handled."
  122. uErrorMsg = uErrorMsg & vbCr & vbCr & _
  123. "Error # " & Err.Number & " was generated by " & _
  124. Err.Source & Chr(13) & Chr(13) & Err.Description
  125.  
  126. Debug.Print uErrorMsg
  127. MsgBox uErrorMsg, , "errHandler_Description", Err.HelpFile, Err.HelpContext
  128.  
  129. Resume ExitRoutine
  130.  
  131. End Select
  132.  
  133. End Sub
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement