Excel 2007 VBA宏编程:错误处理与对话框设计
一、错误处理
1. On Error Resume Next的使用与风险
在代码运行时,如果D盘没有插入磁盘,使用 On Error Resume Next 语句可以让代码跳过产生错误的那一行,继续完美运行。例如:
' 假设这里有一段可能因D盘无磁盘而报错的代码
On Error Resume Next
' 可能出错的代码行
On Error GoTo 0 ' 恢复正常错误处理
不过, Resume Next 虽然在处理错误时很有用,但会让调试代码变得非常困难。在程序后期,可能会因为之前忽略了错误条件而产生不正确或不存在的数据。程序可能看似运行正常,但实际上由于隐藏的错误或不完整的数据而没有起到应有的作用。因为每次遇到错误时,执行都会跳过它,这会给人一种实际情况的错误印象。所以,如果使用 On Error Resume Next ,一定要检查代码的所有输入和输出,确保一切正常工作,并且要保证该语句不会掩盖从电子表格单元格或文件读取时的错误。
2. 错误捕获的影响
当在代码中使用 On Error 语句时,该错误陷阱会在整个过程中一直存在,除非将其禁用。例如,设置一个例程来检查D盘是否插入磁盘并采取相应行动后,一旦错误可能发生的情况过去,就必须关闭这个错误陷阱。如果不这样做,该过程中随后的所有错误都将使用相同的错误处理例程,这会给用户带来极其混乱的结果,因为错误消息可
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



