Access - pdf

 
Vista:

pdf

Publicado por miana (54 intervenciones) el 07/06/2005 10:40:34
Buenos dias a todos, tengo una duda he estado revisando los mensajes del foro pero no me he aclarado mucho, tengo un informe que ahora lo que hago es imprimirlo eligiendo una impresora virtual, genero un pdf y luego lo mando por e-mail.
El usuario me dice que lo quiere automatico, es decir que eligiendo el informe lo imprima en pdf y lo mande por e-mail sin el hacer nada, siempre se manda a la misma direccion.
Si alguien tiene una idea de como hacerlo estaria muy agradecida.
Gracias
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

Automatizar la impresión en PDF y envío por correo electrónico

Publicado por Alejandro (4142 intervenciones) el 05/06/2023 17:47:38
Puedes utilizar el lenguaje de programación VBA (Visual Basic for Applications) en Access para automatizar el proceso de impresión en PDF y envío por correo electrónico. A continuación, te proporciono un ejemplo de cómo puedes hacerlo:

1. Abre el formulario en modo diseño.
2. Haz doble clic en el botón o evento que desencadena la impresión y envío por correo electrónico.
3. Esto abrirá el editor de código VBA. Asegúrate de tener activada la referencia a la biblioteca "Microsoft Outlook" en tu base de datos. Para hacerlo, ve a "Herramientas" > "Referencias" y marca la opción "Microsoft Outlook" en la lista.
4. En el evento del botón o evento correspondiente, puedes agregar el siguiente código:

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
30
31
Private Sub BtnImprimirEnviar_Click()
    Dim fileName As String
    Dim outputPath As String
    Dim outlookApp As Object
    Dim outlookMail As Object
 
    ' Ruta de salida para el archivo PDF
    outputPath = "C:\Ruta\De\Salida\Archivo.pdf"
 
    ' Imprimir el informe en formato PDF
    DoCmd.OutputTo acOutputReport, "NombreInforme", acFormatPDF, outputPath
 
    ' Crear una instancia de la aplicación Outlook
    Set outlookApp = CreateObject("Outlook.Application")
 
    ' Crear un nuevo correo electrónico
    Set outlookMail = outlookApp.CreateItem(0)
 
    ' Configurar los detalles del correo electrónico
    With outlookMail
        .Subject = "Asunto del correo electrónico"
        .Body = "Cuerpo del correo electrónico"
        .To = "correo@ejemplo.com"
        .Attachments.Add outputPath ' Adjuntar el archivo PDF
        .Send ' Enviar el correo electrónico automáticamente
    End With
 
    ' Liberar la memoria de los objetos de Outlook
    Set outlookMail = Nothing
    Set outlookApp = Nothing
End Sub

Asegúrate de reemplazar "NombreInforme" con el nombre del informe que deseas imprimir y "C:\Ruta\De\Salida\Archivo.pdf" con la ruta de salida deseada para el archivo PDF.

Guarda el formulario y prueba el botón o evento. Al hacer clic en él, se imprimirá el informe en formato PDF y se enviará automáticamente por correo electrónico a la dirección especificada.

Recuerda que es importante tener configurada una cuenta de correo electrónico en Outlook y asegurarte de que el usuario tenga los permisos necesarios para imprimir y enviar correos electrónicos.

Espero que esta solución te sea útil.
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