Access - Enviar documento

 
Vista:

Enviar documento

Publicado por Gustavo (8 intervenciones) el 23/05/2004 21:03:50
Hola, quiero hacer lo siguiente:
Cada vez que se inicie la aplicación de la base de datos, quiero que se revise todas las personas que cumplan años ese día, y que a esas personas les envie un mail de un documento html, donde aparezca el nombre de la persona y una imagen prediseñada. Los datos de las personas están en una tabla de la base de datos...

Alguien me puede ayudar???

Gracias
Gustavo Alvarez
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

Enviar documento

Publicado por Alejandro (4142 intervenciones) el 05/05/2023 21:36:46
Para enviar un correo electrónico desde Access y utilizar los datos de la tabla de la base de datos, puedes usar el objeto "Outlook.Application" y "Outlook.MailItem". A continuación, te proporciono un ejemplo básico de cómo podrías hacerlo:

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
32
33
34
Private Sub EnviarCorreo()
 
Dim OutlookApp As Outlook.Application
Dim Correo As Outlook.MailItem
Dim rs As DAO.Recordset
Dim strCorreo As String
Dim strNombre As String
 
Set OutlookApp = New Outlook.Application
Set Correo = OutlookApp.CreateItem(olMailItem)
 
Set rs = CurrentDb.OpenRecordset("SELECT * FROM Nombres WHERE FechaNacimiento = Date()")
 
Do While Not rs.EOF
    strNombre = rs("Nombre")
    strCorreo = rs("CorreoElectronico")
 
    With Correo
        .Subject = "Feliz cumpleaños " & strNombre & "!"
        .To = strCorreo
        .HTMLBody = "<html><body><p>¡Feliz cumpleaños " & strNombre & "!<br><br><img src='C:\Ruta\Imagen.jpg'></p></body></html>"
        .Display 'o .Send para enviar automáticamente
    End With
 
    rs.MoveNext
Loop
 
rs.Close
Set rs = Nothing
 
Set Correo = Nothing
Set OutlookApp = Nothing
 
End Sub

Este ejemplo supone que tienes una tabla llamada "Nombres" con los campos "Nombre", "FechaNacimiento" y "CorreoElectronico". El código selecciona los registros de la tabla donde la fecha de cumpleaños coincide con la fecha actual y recorre cada registro, obteniendo el nombre y el correo electrónico. A continuación, se crea un objeto "MailItem" de Outlook, se establecen los campos "Asunto", "Para" y "Cuerpo" del correo electrónico utilizando los datos de la tabla, y finalmente se muestra el correo electrónico en la pantalla (o se envía automáticamente si se utiliza ".Send" en lugar de ".Display").

En el ejemplo anterior, también se incluye una imagen prediseñada que se encuentra en la ruta "C:\Ruta\Imagen.jpg". Deberás reemplazar esa ruta con la ubicación de la imagen que deseas utilizar.

Es importante tener en cuenta que este ejemplo utiliza Outlook como cliente de correo electrónico. Si estás utilizando otro cliente de correo electrónico, deberás investigar la forma de automatizarlo utilizando su modelo de objetos.
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