Saber en que línea se produce un error
[Rutina que numera las lineas de código y pone un manejador de errores]

Fecha: 28/Mar/2005 (21/03/2005)
Autor: Héctor Iván Miguel  e-mail : ivanmiguel@simectis.com.ar

 


Cuantas veces hemos querido saber en que bendita línea de nuestro código se produce el error. Particularmente, fueron muchas las veces que lo he querido saber pero hace muy poco descubrí la Función Erl() 
Esta Función, poco conocida, nos indica la línea en la que se produjo el error. El problema es que para poder utilizarla debemos numerar las líneas de nuestro código
Ahora bien tengo la forma de saber cual es la línea en la que se produce el error pero 
¿ qué hago con todos los programas que tengo escritos? y fue cuando se me ocurrió realizar esta aplicación. 
Básicamente lo que hace es lo siguiente:
Toma un formulario (frm) o un módulo (bas), y lo procesa línea por línea, numerándolas y, a cada procedimiento o función le pone un manejador de errores del tipo On error Goto Errores. Y muestra un mensaje de error que nos indica el número de error, la descripción y la línea donde se produjo. Además genera un procedimiento que se encarga de grabar en un archivo el mismo mensaje de error que le muestra al operador. 
Para que los programas procesados funcionen correctamente, es necesario crear una referencia a Microsof Scripting Runtime.

Espero que sea de utilidad como fue para mi el código y ejemplos de esta página. Si por esas cosas es mejorada por favor envíenme esas mejoras.

Saludos.
Héctor Iván Miguel
IvanMiguel@sinectis.com.ar

Private Sub Command1_Click()

On Error GoTo Errores
    Dim A As Long, B As Long
1	A = 10
2 	B = 0
3 	MsgBox A / B
Exit Sub
Errores:
	MsgBox Err.Description & "Linea de error: " & Erl()
 End Sub

 


ir al índice

Fichero con el código de ejemplo: ivanmiguel_Linea_Error.zip - Tamaño 6 KB