RESPONDER UNA PREGUNTA

Si para responder la pregunta, crees necesario enviar un archivo adjunto, puedes hacerlo a traves del correo [email protected]

    Pregunta:  68254 - EXPORTAR MEDIANTE CÓDIGO UN CAMPO MEMO DE ACCESS A WORD 2007
Autor:  jesus gl
Hola a todos: Tengo un problema con una bd de access. He creado un formulario para introducir datos en dos tablas. Las tablas son Clientes y Productos y tienen la siguiente estructura:
Tabla clientes:
IdCliente -autonumérico, indexado sin duplicados, campo clave
Nombre_Apellidos - texto
dirección - texto
fechasolicitud -fecha
Tabla Productos:
Idproducto -autonumérico, indexado sin duplicados, campo clave
IdCliente -número
Nombreproducto -tipo texto
Descripción producto -tipo memo
Las tablas están relacionadas a través del campo IdCliente (relación uno, en la parte de la tabla clientes, a varios, en la tabla productos)
En el formulario, además de cuadros de texto para introducir los datos de los clientes, he colocado un cuadro combinado (de nombre "productos_que_faltan" con dos columnas Idproducto y nombreproducto (la columna descripción producto no aparece, supongo que por tratarse de un campo memo) de manera que, cuando hago una selección en él, se ejecuta una consulta basada en la tabla productos a fin de poder obtener el campo memo. Lo que necesito es pasar a una plantilla de word los datos siguientes:
Nombre y apellidos
dirección
fecha del pedido
Productos (y descripción) de los que no dispongo en la actualidad
para enviar al interesado una carta.
En el formulario he colocado un botón de comando con el siguiente código:
Dim Word As New Word.Application
Dim Productos As Word.Document
Dim myRange as Range

word.visible = true
Set Productos = Word.Documents.Open(Filename:=_
"C:"Productos.docx", ReadOnly:=False

Set myRange = Word.ActiveDocument.Content

With myRange.Find
.ClearFormatting
.Replacement.ClearFormatting
.Text = #Producto1# 'en la plantilla de Word puse, en el lugar adecuado
donde quiero que aparezca el texto del formulario
#Producto1#
.Replacement.text = Producto1 'este es el nombre del cuadro de texto
que en el formulario recoge el resultado
de la consulta (campo memo)
.Execute Replace:=wdReplaceAll
End With

Este código se repite para todos los campos que debo "rellenar" con los datos de Access, y funciona bien, salvo cuando el campo memo (Producto1) tiene más de 255 caracteres. Entonces me da el mensaje de error "El parámetro de la cadena es demasiado largo". He probado con muchas de las soluciones que he encontrado en internet, he buscado en libros, he preguntado a amigos... y ¡no doy con la solución! Espero que Vds. puedan orientarme, pues ya no sé qué más probar.
Les agradezco de antemano su atención.


Nombre
Apellidos
Correo
Comentarios