Problema al Generar Documento Word desde Access en una unidad red

Hola. Tengo una plantilla de Word, a la que envio datos desde un formulario de Access mediante el siguiente código:
Private Sub Comando278_Click()
'Guardamos el registro por si no lo hemos guardado
DoCmd.RunCommand acCmdSaveRecord
'Declaramos las variables
Dim vCampo1, vCampo2 As Variant
Dim rutaBD As Variant
Dim miArchivo As Variant
'Cogemos los valores de los campos que necesitamos
vCampo1 = Me.clave.Value
vCampo2 = Me.Objeto.Value
'Cogemos la ruta de la base de datos
rutaBD = Application.CurrentProject.Path
'Creamos una instancia de Word
Dim Wrd As New Word.Application
Set Wrd = CreateObject("Word.Application")
'Especificamos la ruta y nombre de archivo
miArchivo = rutaBD & "\Plantillas\Documento.dotx"
'Abrimos el Word y lo mostramos
Wrd.Documents.Add miArchivo
Wrd.Visible = True
'Reemplazamos los marcardores con los datos que tenemos
With Wrd.ActiveDocument.Bookmarks
.Item("clave").Range.Text = vCampo1
.Item("objeto").Range.Text = vCampo2
End With
End Sub
Hasta aquí todo perfecto. Funciona perfectamente si tengo tanto la Base de Datos como la carpeta Plantillas con su Documento en la unidad C del Ordenador.
El problema lo tengo si pongo la Base de Datos y la carpeta Plantillas con su Documento en una unidad de Red. No reconoce la instrucción y da un error en ejecución de macros. Ya probe separando la base en Back y Front End, y también probé con la base completa, pero el error sigue mostrándose y no abre el Word con los datos enviados.

El código funciona perfectamente con la base en la unidad c, pero si la cambio a una unidad de red, es cuando da error. En este código le digo que la plantilla esta en la carpeta plantillas de la ruta donde se encuentra la bd, por eso no entiendo el fallo al cambiar la ubicación

El error que aparece es "Error 5981 No se puede abrir el almacenamiento de macros". El error lo produce en la línea Wrd.Documents.Add miArchivo.

Al producirse el error en VB compruebo que  en rutaBD tengo lo siguiente: rutaBD = Application.CurrentProject.Path y  me muestra sobrescrito la unidad de red correcta, que es la unidad P. Pero se para la ejecución en Wrd.Documents.Add miArchivo, aunque sobreescrito me aparece la unidad y el archivo correcto. No entiendo. Solo es un fallo que se produce en red pero no en disco c.


Alguna idea para poder solucionarlo???

2 Respuestas

Respuesta

Primero: ¿Qué versión de Access usas?

Segundo: Prueba poner un punto de interrupción y mira que ruta tienes en la variable rutaBD

Es muy seguro que estés apuntando mal a la ubicación de los archivos. Por último, no olvides agregar esa carpeta a tus sitios de confianza.

Que quieres decir con un punto de interrupción? 

La variable en rutaBD apunta a la ruta donde esté alojada la base de datos. 

Ya está agregada a los sitios de Confianza.

Podrías darme ideas para corregir el código?

Gracias.

Perdón. Uso access 2010.

Gracias.

No has dicho que version de Access usas, además, ¿qué Sistema Operativo usas? En la versión vista o superior hay más restricciones.

Tampoco has dicho la ruta de la carpeta. Puedes probar poniendo la carpeta a rajatable, ejemplo:

Ruta="\\TuPC-o-Servidor\TuCarpeta\ElArchivo.dotx"

Respuesta

Las aplicaciones de Access poseen algunos inconvenientes cuando están colocadas en línea, estos problemas por lo general se deben a permisos y condiciones que están encuentran en servidores. Esto ocurre muchas veces ya que las propiedades de ejecución de estos archivos son interpretadas como dañinas, te sugiero que revises estos permisos. También te sugiero que intentes poner la base de datos encriptada para poder usarla.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas