Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Vinibuzi

DoCmd.SendObject - Editmessage

Recommended Posts

Bom dia gente,

 

Estou usando o comando DoCmd.SendObject para enviar um relatório por e-mail.No entanto queria enviar o e-mail diretamente sem clicar em enviar. Até onde endendi a variavel Editmessage faria isso mas independete dela estar 0 ou 1 ou true ou false aparece a tela do e-mail onde preciso clicar enviar.

Os camando q estou utilizando é:

DoCmd.SendObject acReport, "C_FollowUp", acFormatPDF, "meu-mail.com.br", "", "", "", "Envio automatico de e-mail", 0, ""

 

Alguem tem alguma ideia de como solucionar isso?

 

Obrigado

*Estou usando o Access 2007

 

Vinicius

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Vinícius,

 

Abaixo um outra possibilidade de envio de mensagem...

 

 

 

Private Sub sendCommand_Click()
Dim strPath As String

strPath = CurrentProject.Path & "\NomeDoArquivo.xls"
Call modSendMessage(strPath)

End Sub

Sub modSendMessage(Path As String)

Dim appOutLook As Outlook.Application
Set appOutLook = CreateObject("Outlook.Application")

Dim MailOutLook As Outlook.MailItem
Set MailOutLook = appOutLook.CreateItem(olMailItem)

With MailOutLook
.To = "nome@mail.com; nome2@mail.com" 'Aqui você pode fazer um for e buscar de uma tbl, caso existam muitos destinos
.Subject = "Atualização de Produtos ::: " & Day(Date) & "-" & Month(Date) & "-" & Year(Date)
.Body = "Olá," & vbLf & vbLf & "Anexo relação com as últimas atualizações." & vbLf & vbLf & vbLf & "Eu mesmo"
.Attachments.Add (Path) 'Todo o caminho do arquivo - ex: C:\Teste.txt
.Send
End With

End Sub[/Code]

 

 

 

PS: no VBA, em Tools > References, habilitar "Microsoft Outlook 12.0 Object Library"...

 

 

 

 

 

Sem mais,

 

Julien Sorel

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado.

Para colocar o relatório em anexo só incrimentei o código.Para salvar e depois excluir o arquivo.

 

Sub teste()

 

Dim strPath As String

 

strPath = CurrentProject.Path & "\C_FollowUP.pdf"

DoCmd.OutputTo acOutputReport, "C_FollowUP", acFormatPDF, strPath 'Salva relatório

Call modSendMessage(strPath)

 

Kill strPath 'Deleta arquivo gerado

 

End Sub

 

Sub modSendMessage(Path As String)

 

Dim appOutLook As Outlook.Application

Set appOutLook = CreateObject("Outlook.Application")

 

Dim MailOutLook As Outlook.MailItem

Set MailOutLook = appOutLook.CreateItem(olMailItem)

 

With MailOutLook

.To = "nome@mail.com; nome2@mail.com" 'Aqui você pode fazer um for e buscar de uma tbl, caso existam muitos destinos

.Subject = "Atualização de Produtos ::: " & Day(Date) & "-" & Month(Date) & "-" & Year(Date)

.Body = "Olá," & vbLf & vbLf & "Anexo relação com as últimas atualizações." & vbLf & vbLf & vbLf & "Eu mesmo"

.Attachments.Add (Path) 'Todo o caminho do arquivo - ex: C:\Teste.txt

.Send

End With

 

Set appOutLook = Nothing

Set MailOutLook = Nothing

 

End Sub

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.