在学习中我们在平台的代码里看到如下的部分代码:
ExitHere:
Exit Sub
ErrorHandler:
Select Case Err.Number
Case errOpenActionWasCanceled, errOperationCanceledByUser
Case Else
MsgBoxEx Err.Description, vbCritical
End Select
Resume ExitHere
下面是刘老师的解释:
意思是如果是这两种错误,则直接忽略不理会
如果是其它错误,则显示错误消息框
就是字面意思
Select 当前错误号
Case 打开操作被取消,用户取消操作
'不做任何处理
Case Else '如果是其它错误
显示错误消息框
End Select
什么情况下需要写这样的出错语句
有打开窗体或打开报表的动作的时候
即 DoCmd.OpenForm 或 DoCmd.OpenReport
没有这两个的时候就不需要
虽然写了也没有什么影响,不过基本上属于无效代码,从来不会被用到
主要是绑定了数据源的情况下
数据多了打开会慢,按ESC键什么的,是可以取消窗体打开的包括报表
用户觉得太费时间,现在不想继续打开了,就可以取消打开
这种情况下实际上并不是出错,如果直接弹一个错误框出来就不友好了,也不合理
两个自定义的常量
直接写两个数字编号,可读性差,所以写成了常量
不然写个Case 2501,不加注释的话谁知道是什么意思啊