** NORMAS DEL FORO **
Inicio del foro Inicio del foro > Access y VBA > Access y VBA
  Mensajes nuevos Mensajes nuevos RSS - Enviar mail con firma
  Preguntas frecuentes Preguntas frecuentes  Buscar en el foro   Eventos   Registro Registro  Iniciar sesion Iniciar sesion

Enviar mail con firma

 Responder Responder
Autor
Mensaje
sanzlcr Ver desplegable
Nuevo
Nuevo


Unido: 15/Septiembre/2020
Localización: españa
Estado: Sin conexión
Puntos: 21
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita sanzlcr Cita  ResponderRespuesta Enlace directo a este mensaje Tema: Enviar mail con firma
    Enviado: 23/Octubre/2023 a las 16:04
utilizo la siguiente función para enviar facturas generadas en pdf por mail.

Set objmessage = CreateObject("CDO.Message")


objmessage.Subject = "FACTURA Nº" & numfactura
objmessage.FROM = """xxxx "" <xxx>"




objmessage.To = emaildestino



objmessage.addattachment ruta
objmessage.TextBody = Me.txtmensaje




'==This section provides the configuration information for the remote SMTP server.

objmessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2

'Name or IP of Remote SMTP Server
objmessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.serviciodecorreo.es"

'Type of authentication, NONE, Basic (Base64 encoded), NTLM
objmessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = cdoBasic

'Your UserID on the SMTP server
objmessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendusername") = "xxx"

'Your password on the SMTP server
objmessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "xxxx"


'Server port (typically 25)587
objmessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 465

'Use SSL for the connection (False or True)
objmessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True

'Connection Timeout in seconds (the maximum time CDO will try to establish a connection to the SMTP server)
objmessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60

objmessage.Configuration.Fields.Update

'==End remote SMTP server configuration section==

objmessage.send


Me gustaría incluir la firma en el cuerpo del mail pero no se como 
Arriba
xavi Ver desplegable
Administrador
Administrador
Avatar
Terrassa-BCN

Unido: 10/Mayo/2005
Localización: Catalunya ||||
Estado: Sin conexión
Puntos: 14646
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita xavi Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 23/Octubre/2023 a las 19:26
Hola,

Hasta dónde yo se, mediante CDO, no es posible. Por automatización de Outlook si que se puede mandar un correo con la firma por defecto.

Un saludo
Xavi, un minyó de Terrassa

Mi web
Arriba
dokk Ver desplegable
Habitual
Habitual


Unido: 15/Mayo/2020
Localización: Hendaye
Estado: Sin conexión
Puntos: 154
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita dokk Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 24/Octubre/2023 a las 13:07
Yo lo hice en su momento con una tabla de usuarios en la que guardaba los datos de usuario. email contraseña etc (no es lo más seguro del mundo, pero bueno). Añadí un campo de firma en el que guardaba una firma en formato html, de forma que cada usuario tenía su firma configurada. De hecho tenía varios campos con firmas en varios idiomas. 

Luego a la hora de crear el cuerpo del mensaje le añadía al final el contenido del campo de la firma et voilà. Mira, he localizado la función que usaba para el envío (yo la usaba con Gmail, pero dejó de funcionar porque cambiaron la seguridad y metieron la doble verificación):

Public Function SendSimpleCDOMail(Dest As String, enc As String, cuerpo As String, rutaEm As String)
    Const sprocname As String = "modCDO - SendSimpleCDOMail"
    On Error GoTo ErrorHandler
    Dim mail    As Object           ' CDO.MESSAGE
    Dim config  As Object           ' CDO.Configuration
    Dim ans As Integer
    Set mail = CreateObject("CDO.Message")
    Set config = CreateObject("CDO.Configuration")
    
    config.Fields(cdoSendUsingMethod).value = cdoSendUsingPort
    config.Fields(cdoSMTPServer).value = "smtp.gmail.com"
    config.Fields(cdoSMTPServerPort).value = 465
    config.Fields(cdoSMTPUseSSL).value = True
    config.Fields(cdoSMTPAuthenticate).value = cdoBasic
    config.Fields(cdoSendUserName).value = UsEm
    config.Fields(cdoSendPassword).value = ctrEm

    config.Fields.Update
    
    Set mail.Configuration = config
    
    With mail
        .To = Dest
        .From = nomEm & " <" & UsEm & ">"
        .Subject = enc
        .HTMLBody = cuerpo
        .HTMLBodyPart.Charset = "utf-8"
        .Send
    End With
    SendSimpleCDOMail = True
    Set config = Nothing
    Set mail = Nothing
End Function

Albert Hostein
Aprendiendo cayendo
Arriba
sanzlcr Ver desplegable
Nuevo
Nuevo


Unido: 15/Septiembre/2020
Localización: españa
Estado: Sin conexión
Puntos: 21
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita sanzlcr Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 24/Octubre/2023 a las 13:10
hola,

He hecho algo similar, he subido la imagen que utilizan de firma al ftp y muestro el cuerpo del mensaje en formato html y así añado el link a la imagen.


Arriba
acilu55 Ver desplegable
Asiduo
Asiduo


Unido: 27/Septiembre/2011
Estado: Sin conexión
Puntos: 205
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita acilu55 Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 15/Noviembre/2023 a las 18:20
yo lo hacia usando una plantilla de mail que contiene la firma 

Set OUTAPP = CreateObject("Outlook.Application")
Set OUTMAIL = OUTAPP.CreateItemFromTemplate(Application.CurrentProject.Path & "\oficio.oft")
 ' oficio.oft es una plantila de mail con la firma
With OUTMAIL
.To = mail
.cc = ""
.bcc = ""
.BodyFormat = olFormatHTML
            
.Subject = "asunto del envio"
adjunto1 = Application.CurrentProject.Path & "\factura.pdf"

.Attachments.Add (adjunto1)
...
Gracias a todos de antemano
Arriba
xavi Ver desplegable
Administrador
Administrador
Avatar
Terrassa-BCN

Unido: 10/Mayo/2005
Localización: Catalunya ||||
Estado: Sin conexión
Puntos: 14646
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita xavi Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 16/Noviembre/2023 a las 16:09
@acilu55 me gusta la idea. Te la pillo.

Gracioas
Xavi, un minyó de Terrassa

Mi web
Arriba
 Responder Responder
  Compartir tema   

Ir al foro Permisos de foro Ver desplegable