Access - necesito ayuda

 
Vista:

necesito ayuda

Publicado por Mewyn (25 intervenciones) el 27/04/2007 11:00:03
Necesito que me ayudeis en un trabajo muy complicado para mi en acces. La verdad que no se manejarme muy bien con acces pero se que hay una manera de poder enlazar un documento hecho en word.
Os explico más o menos que es lo que quiero hacer.

- una base de datos de clientes, hasta ahí llego.
- lo complicado llega ahora, tengo un formulario hecho en word que quiero que me salga en el acces, es una hoja entera.
- de ese formulario quiero que activando uno de los campos que hay me genero un informe, y si activo otra casilla me genere otro informe, que tambien son documentos de word.
- de la tabla de clientes quiero que los campos se me pongan en el documento de word, al poner yo nº pedido tal (que estará en la tabla de clientes) se me introduzcan todos los datos en el formulario.

No se si me he explicado bien, cualquier cosa preguntar.
Muchas gracias.

Salu2
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
Imágen de perfil de Alejandro

Enlazar documentos de Word y generar informes desde una base de datos

Publicado por Alejandro (4142 intervenciones) el 09/08/2023 22:12:55
Entiendo que deseas enlazar documentos de Word a registros de clientes en tu base de datos de Access, y también generar informes personalizados a partir de esos documentos de Word. Aquí tienes los pasos para lograrlo:

1. Enlazar documentos de Word:

- Abre la tabla de clientes en modo diseño.
- Agrega un campo de tipo "Adjuntar archivo" o "Adjuntar documento" en la tabla. Este campo se utilizará para almacenar los documentos de Word.
- Guarda la tabla.

2. Crear el formulario principal:

- Crea un formulario en Access basado en la tabla de clientes. Puedes usar el asistente de formularios para crearlo rápidamente.

3. Agregar controles en el formulario:

- En el formulario, agrega los controles necesarios para ingresar datos de los clientes.
- Agrega un control "Examinar" o "Adjuntar archivo" en el formulario para permitir a los usuarios adjuntar los documentos de Word relacionados con los clientes.

4. Generar informes personalizados:

- Crea documentos de Word con los informes que deseas generar. Puedes utilizar campos de combinación para insertar los datos de los clientes en los documentos.

5. Agregar código VBA para generar informes:

- En el evento `AfterUpdate` del control que activa el informe en el formulario, agrega código VBA para generar el informe de Word.
- Utiliza el campo de combinación de Word para rellenar los datos del cliente en el documento.

Ejemplo de código VBA para generar un informe:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Private Sub GenerarInforme_Click()
    Dim objWord As Object
    Dim objDoc As Object
    Dim strSQL As String
 
    ' Conexión a Word
    Set objWord = CreateObject("Word.Application")
    objWord.Visible = True
 
    ' Abre el documento de Word
    Set objDoc = objWord.Documents.Open("Ruta\Archivo.docx") ' Reemplaza con la ruta de tu archivo de Word
 
    ' Rellena los datos del cliente en el documento
    strSQL = "SELECT * FROM Clientes WHERE IDCliente=" & Me.IDCliente
    With objDoc.MailMerge
        .MainDocumentType = wdFormLetters
        .OpenDataSource Name:="", Connection:="QUERY " & strSQL, SQLStatement:="SELECT * FROM [Clientes]"
        .Execute Pause:=False
    End With
 
    ' Cierra y guarda el documento
    objDoc.SaveAs2 "Ruta\InformeGenerado.docx" ' Cambia la ruta y el nombre del archivo generado
    objDoc.Close
    Set objDoc = Nothing
 
    ' Cierra Word
    objWord.Quit
    Set objWord = Nothing
End Sub

Recuerda ajustar el código y los nombres de los campos según tu base de datos y documentos de Word.

Este es un enfoque general para lograr lo que deseas. Puedes adaptar estos pasos y el código VBA a tus necesidades específicas.
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