Excel的VBA Err对象
然而,我们强烈建议您先阅读这个例子。当在Excel VBA发生错误时,Err对象的属性信息填满。
现状:
下面的程序计算数的平方根。
1.将一个命令按钮
您的工作表,并添加以下代码行:
Dim rng As Range, cell As Range Set rng = Selection For Each cell In rng On Error GoTo InvalidValue: cell.Value = Sqr(cell.Value) Next cell Exit Sub InvalidValue: MsgBox Err.Number & " " & Err.Description & " at cell " & cell.Address Resume Next
结果,当你选择Range(“B2:B6”),并单击工作表上的命令按钮:
说明:当发生错误时,Err对象的数量属性填充有当前错误的一个独特的错误数量和说明属性填充有当前错误的错误描述。
2.这些描述可能不是你的程序的用户来说非常实用。你可以使错误信息更方便用户通过修改宏的最后部分如下:
InvalidValue: Select Case Err.Number Case Is = 5 MsgBox "Can't calculate square root of negative number at cell " & cell.Address Case Is = 13 MsgBox "Can't calculate square root of text at cell " & cell.Address End Select Resume Next
选择案例计划,以了解更多的选择事例结构。
结果: