vba中没有 try catch异常处理语句 但有 on error 语句和try catch语句类似
形式如:on error +处理方式
第一种 :on error goto 0
默认报错 ,和不使用 on error goto 0 语句报错一样
.....
on error goto 0
n =1/0
.....
等同下面
.....
n =1/0
.....
第二种 :on error goto [标志语句]
出现异常后跳转, 到自己设置的出错后处理语句
.....
on error goto biaozhiyuju
n=1/0
.....
exit sub
biaozhiyuju:
[出现异常后需处理的语句 ]
end sub
第三种:on error resume next
出现异常后忽略异常,程序继续执行。
......
on error resume next
n=1/0
......
上述语句 n=1/0有错误但被 忽略,
程序继续执行下一行 类似 continue。
但使用时需注意,错误被忽略,但错误还是存在。如何使用到错误则还会出错。
所以使用on error resume next语句的前提错误没有被使用!例如下述语句仍然会出错:
.......
on error resume next
n=1/0
.......
m=n
......
因为错误被使用所以仍会出错 。
以上位个人总结,仅供参考。