excel - 当错误抛出时,我正在处理错误以跳到下一步。第一次错误工作正常,第二次抛出错误
问题描述
下面的代码在第一次错误时运行良好,但第二次抛出错误。我收到错误cn.execute(Sql)
所以我想在出现错误时跳过这个并继续循环
'EXECUTION OF SQL QUERY
Application.EnableEvents = False
Application.ScreenUpdating = False
'Application.ErrorCheckingOptions.BackgroundChecking = False
Set Sql = ws.Range("D" & m)
On Error GoTo errHandler:
Set Rec_set = cn.Execute(Sql) 'Issue SQL statement
Status = Worksheets("Count").Range("B" & m).Value
Application.StatusBar = "Table Executing :" & Status
While Not Rec_set.EOF
ws.Range("E" & m).CopyFromRecordset Rec_set
Wend
Rec_set.Close 'Close the recordset
'FILE UPLOAD
'Mention the SHarePoint Address and directly upload into SharePoint
ws.Range("D" & m & ":" & "E" & m).ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"" & sFolder & "/_Count_Row" & m & ".pdf", Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=False
With ws
.Hyperlinks.Add Anchor:=.Range("F" & m).End(xlUp).Offset(1, 0), _
Address:="" & sFolder & "/Count_Row" & m & ".pdf", _
ScreenTip:="Hyperlink", _
TextToDisplay:="Count_Row" & m
Application.StatusBar = "File is being uploded into SharePoint for the table :" & Status
End With
errHandler:
Next m
Resume next
我仍然抛出错误后尝试过errHandler:
有人可以帮助我吗?
解决方案
如果你想避免错误Resume Next
,那么你也必须清除它们。
Resume Next
因此,在write之后(或之前)的行上Err.Clear
。这是一些如何使用的小例子Err.Clear
,虽然它看起来很像意大利面条代码:
Public Sub TestMe()
Dim cnt As Long
On Error GoTo TestMe_Error
For cnt = 1 To 10
If Err.Number = 0 Then
If cnt Mod 2 = 1 Then
Debug.Print cnt / 0
Else
Debug.Print cnt / 2
End If
End If
Next cnt
On Error GoTo 0
Exit Sub
TestMe_Error:
Debug.Print "Error " & Err.Number & " (" & Err.Description & ") "
Err.Clear
Resume Next
End Sub
推荐阅读
- r - 如何在 ggplot2 的 geom_text() 中解析 LaTeX 数学公式
- javascript - 为什么 Array.length 返回一个大于实际最高数组索引的数字?javascript不是从0开始计数吗?
- python - 优化python代码以获得更快的响应
- c# - UserControl 不显示数据
- php - 使用 PHP 对自定义 shortode 进行正则表达式匹配
- javascript - react.js 中数组更新状态的这种解构语法如何
- flask-sqlalchemy - 由于相同的代码,sqlalchemy 内部错误与我的编码问题不一样
- bash - bash 中 fortran 程序的参数
- c - 在 C 中释放结构是否也会删除其成员?
- python - 如何在 scikit-learn 中实现多项式逻辑回归?