Visual Basic - On Error GoTo

Life is soft - evento anual de software empresarial
 
Vista:

On Error GoTo

Publicado por carlos pulga (136 intervenciones) el 21/02/2007 21:03:14
Private Function LimpiarVacio()
On Error GoTo Suk
Open archivo For Input As #1
Line Input #1, buf 'leo línea completa
Close #1
flag = True
End Function
Suk:
flag = False
End Function

cuandop llega a esta funcion me genera un error que dice:

Error de compilacion: Etiqueta no definida

Particular mente no le veo nada malo me podrian decir que esta pasando!?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:On Error GoTo

Publicado por AlbertoV (200 intervenciones) el 21/02/2007 22:04:32
No veo porqué la haces como Function, si no te devuelve ningún valor hacia LimpiarVacio. Yo la haría como Sub. Pero antes de salir con Exit Sub (la End Function que tenés dos veces) tienes que restablecer el desvío normal de los errores con "On Error GoTo 0", pues si se te produce un error en otra parte del programa no encontrará "Suk:" que está (correctamente) definida dentro del procedimiento.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:On Error GoTo

Publicado por santiago (27 intervenciones) el 22/02/2007 04:20:40
function .........()

on goto error controlerror

. .. . .. . . .. .
.... .. . . . .. .. .

exit function

controlerror:
procedimiento de error
end function
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:On Error GoTo

Publicado por AlbertoV (200 intervenciones) el 21/02/2007 22:06:17
Otro detalle: dentro de lo que sigue a Suk: tienes que finalizar con Resume.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Prueba así

Publicado por Malandrín (47 intervenciones) el 22/02/2007 00:39:17
Private Function LimpiarVacio()
On Error GoTo Suk
Open archivo For Input As #1
Line Input #1, buf 'leo línea completa
Close #1
flag = True
Exit Function ' Y no End Function
Suk:
flag = False
Resume Next ' Faltaba esto
End Function ' Aquí sí finaliza la función.

pero, como te dice AlbertoV, ¿para qué haces LimpiarVacio como función, si no retorna nada? podrías cambiarlo a Sub.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Prueba así

Publicado por carlos pulga (136 intervenciones) el 22/02/2007 17:21:41
bueno la idea de esta funcion es averiguar si el archivo esta vacio, si es asi afuera hay procedimientos correspondientes a ello. gracias de todos modos.. XD
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar