brunoluizmaia 6/1/2020, 13:01
Boas,
Deverá enviar e-mail via CDO.
Segue uma solução que utilizo.
Criar um módulo e colar e depois criar um botao enviar e chamar a função "Call enviaremailhot()"
Function enviaremailhot()
Dim iMsg, Cdo_Conf, Flds, sch
sch = "http://schemas.microsoft.com/cdo/configuration/"
Set Cdo_Conf = CreateObject("CDO.Configuration")
'Variaveis
Dim servidor_smtp As String
Dim conta_autenticada As String
Dim senha_para_envio As String
Dim email_origem As String
Dim email_destino As String
Dim email_porta As Integer
Dim email_assunto As String
Dim email_corpo As Long
'Abaixo seguem algumas definicoes de variaveis para o envio de seu formulario. Por favor preencha os campos abaixo.
servidor_smtp = "smtp.live.com" ' Informacoes so seu servidor SMTP
senha_para_envio = "senha!" ' senha da conta de e-mail
email_origem = "seuemail@hotmail.com" ' e-mail que indica de onde partiu a mensagem
email_destino = "destino@gmail.com" ' e-mail que vai receber as mensagens do formulario
email_assunto = "Teste" ' Assunto do email
email_corpo = "Teste corpo do Email..." ' Corpo do Email
email_porta = 25 ' porta smtp
Cdo_Conf.Fields.Item(sch & "sendusing") = 2
Cdo_Conf.Fields.Item(sch & "smtpauthenticate") = 1
Cdo_Conf.Fields.Item(sch & "smtpserver") = servidor_smtp
Cdo_Conf.Fields.Item(sch & "smtpserverport") = email_porta
Cdo_Conf.Fields.Item(sch & "smtpconnectiontimeout") = 60
Cdo_Conf.Fields.Item(sch & "sendusername") = email_origem
Cdo_Conf.Fields.Item(sch & "sendpassword") = senha_para_envio
Cdo_Conf.Fields.Item(sch & "smtpusessl") = True
'Cdo_Conf.Fields(sch & "urlproxyserver") = "10.111.2.139"
'Cdo_Conf.Fields(sch & "proxyserverport") = "443"
Cdo_Conf.Fields.Update
Dim cdo_mensagem As Object
Set cdo_mensagem = CreateObject("CDO.Message")
Set cdo_mensagem.Configuration = Cdo_Conf
cdo_mensagem.BodyPart.Charset = "iso-8859-1"
cdo_mensagem.From = email_origem
cdo_mensagem.To = email_destino
cdo_mensagem.Subject = email_assunto
'------Para anexar arquivo use uma das linguagens abaixo
'Cdo_Mensagem.AddAttachment (ThisWorkbook.Path & "\Envio\Arquivo das Lojas Envio.xlsm")
'ou
'Cdo_Mensagem.AddAttachment ("C:\Envio\Arquivo das Lojas Envio.xlsm")
Dim strBody As String
strBody = email_corpo
cdo_mensagem.HTMLBody = strBody
cdo_mensagem.Send
Set cdo_mensagem = Nothing
Set Cdo_Conf = Nothing
MsgBox "E-mail enviado com sucesso"
End Function