Página 1 de 1

MACRO enviar e-mail pelo VBA

Enviado: 22 Jun 2021 às 11:13
por vanessaambrosio
Pessoal, estou tentando enviar de forma automática um e-mail pelo vba do excel. Eu tenho um formulário, onde na primeira aba (cadastrar IT) são inseridas as informações e, na segunda aba (compartilhar por email), são preenchidas a partir dos dados da primeira aba as informações que serão enviadas por e-mail automaticamente. Eu consigo copiar as informações do textbox "mensagem", mas quando o e-mail é enviado a formatação é alterada, sem os espaços conforme imagem em anexo.
O código para envio do e-mail é o seguinte:

Private Sub cmdEnviarEmail_Click()

Dim iMsg, iConf, Flds

Set iMsg = CreateObject("CDO.Message")
Set iConf = CreateObject("CDO.Configuration")
Set Flds = iConf.Fields

schema = "http://schemas.microsoft.com/cdo/configuration/"
Flds.Item(schema & "sendusing") = 2
'Configura o smtp
Flds.Item(schema & "smtpserver") = "smtp.gmail.com"
'Configura a porta de envio de email
Flds.Item(schema & "smtpserverport") = 465
Flds.Item(schema & "smtpauthenticate") = 1
'Configura o email do remetente
Flds.Item(schema & "sendusername") = txtRemetente.Value
'Configura a senha do email remetente
Flds.Item(schema & "sendpassword") = txtSenha.Value
Flds.Item(schema & "smtpusessl") = 1
Flds.Update

With iMsg
'Email do destinatário
.To = "vanessa@gmail.com"
'Seu email
.From = txtRemetente.Value
'Título do email
.Subject = txtAssunto.Value
'Mensagem do e-mail, você pode enviar formatado em HTML
.HTMLBody = txtCorpoemail.Value
'Seu nome ou apelido
.Sender = txtAutor.Value
'Nome da sua organização
.Organization = "Empresa"
'e-mail de responder para
.ReplyTo = txtRemetente.Value
Set .Configuration = iConf
.Send
End With

Set iMsg = Nothing
Set iConf = Nothing
Set Flds = Nothing

MsgBox "O e-mail foi enviado com sucesso!", vbOKOnly, "Sucesso"

'Apaga a senha
txtSenha = Empty

End Sub

Alguém pode me ajudar?

Re: MACRO enviar e-mail pelo VBA

Enviado: 22 Jun 2021 às 11:14
por vanessaambrosio
Imagem