Error al tener acceso a un archivo

Te envío la duda que he puesto en el tablón por si se te ocurre alguna explicación y posible solución:
Bueno, no entiendo muy bien lo que ocurre, pero me aparece un error "Error al tener acceso al archivo. Es posible que se haya perdido la conexión a la red"
1) Puedo crear tanto un módulo como un módulo de clase y editarlos, pero a la hora de borrarlos aparece ese mensaje de error ¿?
2) He creado un formulario como copia de un formulario previo, asociándole una nueva consulta para que me muestre datos diferentes. Pues bien, si desde Visual Basic intento acceder a este formulario me aparece ese error ¿?
3) No es el mismo error, pero quizás pueda tener algo que ver. Si intento abrir ese nuevo formulario que creo asociándole una nueva consulta desde Access me aparece el siguiente mensaje de error: "La expresión al dar formato que introdujo como valor de la propiedad de evento produjo un error: Error al tener acceso al archivo. Es posible que se haya perdido la conexión a la red."
¿Alguna idea? :S

1 Respuesta

Respuesta
1
Solo unas ideas:
1. Depura el código
2. Compacta y repara la base de datos
Consejo: divide tu base de datos (si no lo tienes hecho ya)
3. Si todo eso falla, crea una nueva base de datos e importa todos los objetos
Xavi
http://www.llodax.com
http://www.mvp-access.com
http://www.aesoft-databases.com
Pues he estado mirando el código y en principio está correcto. Igual es que no genero código correctamente, no se... A continuación te comento los pasos que he seguido:
1) Creo un informe empleando los campos de una determinada consulta. Realizo una reorganización de los mismos, así como algunas modificaciones que tienen que ver con la apariencia del mismo, como por ejemplo, añadir una línea justo después de mostrar el valor de cada registro.
2) Dado que uno de los campos será la combinación de otros dos lo que hago es lo siguiente: Pincho el botón secundario sobre el área de detalle > Generar evento > Generador de código.
3) Una vez estoy en VBA, escribo el siguiente código:
Private Sub Detalle_Format(Cancel As Integer, FormatCount As Integer)
On Error Resume Next
    Err = 0
    Me.campoDest= Me.campoOrigen1 & vbCrLf & Me.campoOrigen2
    If Err = 2427 Then Me.campoDest= Me.campoOrigen1
End Sub
4) Guardo el fichero y a la hora de ver de nuevo el informe me aparece ese mensaje (Error al tener acceso al archivo. Es posible que se haya perdido la conexión a la red.)
5) Pincho sobre el botón aceptar, se abre el VBA y aparece la típica flechita amarilla apuntando al principio del código.
A partir de aquí, no sé que es lo que tengo que hacer para solucionar dicho problema :S
Para empezar no creo que ese código sea necesario.
Basta con que el control campoDest, en su propiedad Origen del control, apunte a esos dos controles. Dado que no sé cual es el error 2427, voy a suponer que el campoOrigen2 es un nulo... ¿cierto? En ese caso, concatena los campos de forma que evalúe el nulo mediante la función Nz.
Xavi
Exacto. Empleo ese if para controlar si se produce dicho error. He utilizado también la función Nz, pero no hay manera de que funcione. Es más, creo que el error no está en el código, dado que en otro informe se especifica la misma función y se realiza la concatenación de los campos y la visualización del informe sin problemas...
He probado a utilizar la propiedad origen de control, pero no consigo que aparezca el valor de esos campos (por ello he generado el código en VBA) He probado =[campoOrigen1] & [campoDestino2], pero no he conseguido nada :S
¿Y así?
=[campo Origen1] & Nz([campoOrigen2];"")
Ahora sí que funciona. Parece ser que el problema era un segmento de código que estaba incorrecto (si es que esto de que varias personas toquen la misma base de datos sin un control...)
Bueno, ahora me has surgido otros problemillas:
1) He creado un informe de prueba, el cual he borrado posteriormente. Pues bien, resulta que en la ventana donde veo los objetos de la base de datos en el apartado de informes no aparece, mientras que en VBA sigue apareciendo y no hay manera de eliminarlo de allí.
2) He copiado un informe de otra base de datos y resulta que no me aparece en la venta de access donde se ven los objetos de la base de datos, pero si en VBA ¿A qué se debe esto?
Añado que debido al segundo problema (copia de informe de una base de datos a otra) el Access comienza a irme lento y no responde :S
Bueno, muchísimas gracias por la ayuda prestada. Al final he tenido que resolver este último problema recurriendo a la creación de una nueva base de datos e importando todos los objetos (eso sí, poniendo la propiedad Has Module de algunos objetos a false)
Saludos.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas