处理错误处理过程中的错误-t小雨
Access软件网QQ交流学习群(群号码198465573),欢迎您的加入!
首页 >技术文章> Access数据库-模块/函数/VBA


处理错误处理过程中的错误

发表时间:2009/11/10 10:49:12 评论(1) 浏览(9411)  评论 | 加入收藏 | 复制
   
摘 要:用On Error Resume Next处理错误处理过程中的错误
正 文:

该过程导出表,如果目标文件已存在,则发生编号3010错误,在程序中捕捉,然后用Kill删除同名文件,但若该文件打开导致不能删除,则Kill语句又发生错误(号70),那么这个错误如何捕捉?

Public Sub SOutput()
On Error GoTo Err1
    CurrentDb.Execute "SELECT * INTO [Excel 8.0;DATABASE=C:\临时导出.Xls].Sheet1 FROM 表1"
Exit1:
    Exit Sub
Err1:
    If Err.Number = 3010 Then
        If MsgBox("存在同名文件,是否覆盖?", vbYesNo, "提示") = vbYes Then
            Kill "C:\临时导出.Xls"   ''<-------- 如果这里出错,如何捕捉
            Resume
        End If
    Else
        MsgBox Err.Description & Err.Number
    End If
    Resume Exit1
End Sub

解决方案:

Public Sub SOutput()
On Error Resume Next
   CurrentDb.Execute "SELECT * INTO [Excel 8.0;DATABASE=C:\临时导出.Xls].Sheet1 FROM 表1"
   If Err.Number = 3010 Then
        If MsgBox("存在同名文件,是否覆盖?", vbYesNo, "提示") = vbYes Then

            Kill "C:\临时导出.Xls"   
          If Err.Number = 70 Then
            MsgBox "请关闭对象再进行操作", vbInformation, "提示"
            Exit Sub
          End If
        End If
    Else
        MsgBox Err.Description & Err.Number
    End If
End Sub


Access软件网交流QQ群(群号:198465573)
 
 相关文章
SQL SERVER 日志已满的处理方法  【风行  2013/2/3】
特殊符号惹的祸--Access查询错误处理:Microsoft A...  【麥田  2013/5/22】
鼠标和键盘事件处理说明  【杜超-2号  2013/6/8】
Access之错误代码3008\Access运行时错误'3008'...  【杏林求真  2013/6/17】
【WPF小品】图片处理示例  【煮江品茶  2013/7/8】
常见问答
技术分类
相关资源
文章搜索
关于作者

t小雨

文章分类

文章存档

友情链接