Como evitar el error 2220 en tiempo de ejecución.

Quisiera saber si es posible y como evitar este error

Tengo un formulario y en uno de los cuadro de texto se muestran los gastos, cuando clico en él nuestra el logo de dicho gasto el problema es que cuado no esta la ruta o esta mal aparece este error.

1 Respuesta

Respuesta
1

Como cualquier error, lo puedes controlar con un "control de errores"

Private Sub...

On error goto sol_err

'Aquí tu código

Salida:

Exit Sub

sol_err:

'Código para manejar el/los errores

Resume Salida

Exit Sub

En tu caso, la parte del control podría ser:

If Err.Number=2220 Then

Me.NombreControlDondeMuestrasElLogo.Picture=""

End If

Hola gracias por contestar.

He estado cambiando la instrucción y estoy liado, tengo esta

Private Sub Comando85_Click()
If IsNull(PdfSiNo_Recibo.Value) Then
MsgBox " ¡LO SIENTO!" & vbCrLf & " No hay recibo para mostrar.", vbInformation
Else
If Nz(Me.TxtPdf_Recibo, "") = "" Then Exit Sub
Application.FollowHyperlink Me.TxtPdf_Recibo
End If
End Sub

Que no se donde esta el error si PdfSiNo_Recibo esta lleno lo habré pero si esta vació no ejecuta el MsgBax.

Puedes decirme donde esta el error.

Gracias.

hola he encontrado la solución a medias este es el código que tengo me podrías decir como la debo hacer para evitar el error

Private Sub Comando377_Click() 
If VarType(Me.TxtPdf_Recibo) = vbNull Then
MsgBox " ¡LO SIENTO!" & vbCrLf & " No hay recibo para mostrar.", vbInformation
Else
If Nz(Me.TxtPdf_Recibo, "") = "" Then Exit Sub
Application.FollowHyperlink Me.TxtPdf_Recibo
End If
End Sub

Si no hay datos si se ejecuta el MsgBox pero si esta mal produce error.

Gracias.

El error lo más probable provenga de que no existe el archivo en esa ubicación. Si no quieres que te salga ningún mensaje de error, y sin ver lo que tienes hecho y cómo, ponle después del Private Sub... esta linea:

On Error Resume Next

De esta forma ignorará cualquier error (aunque tendrás que comprobar que funciona correctamente)

Le he puesto la línea "On Error Resume Next" pero sigue saliendo el "Aviso de seguridad de Microsoft Access"

Comprueba que tu BD está en una ubicación de confianza, y/o desactiva los avisos de access, con la instrucción DoCmd.SetWarnings False antes de la linea del followhyperlink

Te agradezco tu ayuda pero le puse la línea y sigue saliendo "Aviso de seguridad de Microsoft Access"

Dime una cosa, ¿tu campo lo tienes configurado como hipervínculo o como texto? Porque no es lo mismo...

Mira esta pregunta: Eliminar avisos al abrir hipervínculos access 2003 que es un caso similar

lo tengo cono texto

El aviso de seguridad te sale solo cuando en el campo tienes mal el nombre o ruta de tu archivo, ¿no?

Si es así, puedes usar la función Dir() para comprobar si el archivo existe en la ruta o no, y en este caso, salir del procedimiento.

Aquí tienes un ejemplo de esto: Hipervínculo

Y aquí otro: http://www.utteraccess.com/forum/Run-time-Error-490-Ope-t1969959.html 

Además, en el enlace de la respuesta anterior, tenías otras alternativas al followhyperlink que funcionan igual de bien.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas