Excel VBA objeto Err
Si usted no está familiarizado con enlace: / VBA ejemplos de manejo de errores [Control de errores]
sin embargo, es muy recomendable que lea este ejemplo primero. Cuando se produce un error en Excel VBA, las propiedades del objeto Err están llenos de información.
Situación:
El siguiente programa calcula la raíz cuadrada de números.
-
Coloque un botón de comando
en su hoja de trabajo y añadir las siguientes líneas de código:
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
Resultar cuando se selecciona Range ( «B2: B6») y haga clic en el botón de comando en la hoja:
Explicación: cuando se produce un error, la propiedad número del objeto Err se llena con un número de error única del error actual y la propiedad Description se llena con la descripción de error del error actual.
-
Estas descripciones pueden no ser muy útil para los usuarios de su programa. Puede hacer que los mensajes de error más fácil de usar mediante la modificación de la última parte de la macro de la siguiente manera:
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
Consejo: ir a través de nuestro enlace: / VBA-ejemplos de selección de los casos [Select Case]
programa para aprender más sobre la estructura Select Case.
Resultado: