Excel 2007 VBA宏编程:错误处理与对话框设计
1. 错误处理
在Excel 2007 VBA宏编程中,错误处理是一个重要的环节。 On Error Resume Next 语句可以让代码在遇到错误时跳过产生错误的代码行,继续执行后续代码。例如,如果D盘没有插入磁盘,使用该语句后代码仍能完美运行。
' 示例代码,模拟D盘无磁盘情况
On Error Resume Next
' 这里可能有访问D盘的代码
On Error GoTo 0
不过, Resume Next 虽然在处理错误时很有用,但会让调试代码变得非常困难。因为在程序的后期,可能会由于之前忽略的错误而产生不正确或不存在的数据。程序可能看似运行正常,但实际上由于隐藏的错误或不完整的数据而没有达到预期效果。所以,如果使用 On Error Resume Next ,一定要检查代码的所有输入和输出,确保一切正常运行。同时,要避免该语句掩盖从电子表格单元格或文件读取时的错误,否则可能会导致程序出现严重问题。
错误陷阱一旦设置,除非被禁用,否则会在整个过程中一直存在。例如,你可以设置一个例程来检查D盘是否插入磁盘并采取相应的操作,但在错误发生的可能性消除后,一定要关闭这个错误陷阱。如果不这样做,后续过程中的所有错误都将使用相同的错误处理例程,这会给用户带来极其混乱的结果。比如,后续出现的错误可能是除以零,但错误消息却显示 “Drive D not ready”。
要禁用错误陷阱,可以使用以下代码:
超级会员免费看
订阅专栏 解锁全文
7

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



