Página 1 de 1

Macro para envio de pedido

Enviado: 18 Nov 2015 às 15:14
por fazerbem
Olá tenho a seguinte macro, que faz com que eu envie apenas a planilha especificada por email, conforme abaixo.

Eu gostaria de implantar na mesma, uma rotina em que eu pudesse escolher em qual conta de email sera usada para o envio, pois em meu Outlock 2013 eu possuo 4 contas cadastradas, pois trabalho com representações.
Assim eu ja colocaria fixo nesta Macro a conta a ser usada. Na outra Planilha da outra empresa , a macro teria o mesmo comando porem pegando uma conta de envio diferente. Isso pra se evitar de toda vez ter que mudar a conta padrao no Outlook.

Queria tambem uma rotina que eu pudesse acrescentar no corpo da mensagem algum texto.

ex: referencia [A6] , tudo que estiver escrito na coluna A6 da Planilha será usada do corpo da mensagem.

Grato, André Luiz

Sub Pedido()

Dim NovoArquivoXLS As Workbook
Dim sPlanAEnviar As String
Dim sExcluirAnexoTemporario As String


'Define a Planilha que será enviada por Email. Ex: Plan1, Plan2, Pedidos, etc
sPlanAEnviar = "Profit"

'Cria um novo arquivo Excel
Set NovoArquivoXLS = Application.Workbooks.Add

'Copia a Planilha para o novo arquivo criado
ThisWorkbook.Sheets(sPlanAEnviar).Copy Before:=NovoArquivoXLS.Sheets(1)

'Salva o Arquivo
NovoArquivoXLS.SaveAs ThisWorkbook.Path & "\" & sPlanAEnviar & ".xLs"
sExcluirAnexoTemporario = NovoArquivoXLS.FullName

'Envia o email
NovoArquivoXLS.SendMail "vendas@profitlabs.com.br", "Pedido " & [I9].Value

'Fecha o Arquivo Novo
NovoArquivoXLS.Close

'Exclui o arquivo criado apenas para ser enviado
Kill sExcluirAnexoTemporario


End Sub

Re: Macro para envio de pedido

Enviado: 19 Nov 2015 às 12:17
por alexandrevba

Re: Macro para envio de pedido

Enviado: 23 Nov 2015 às 17:24
por fazerbem
Alexandre Vba amigao, desculpe a demra na resposta. Vi o link, mas sou leigo totalmente em VBA, e tudo que ja apliquei hje foi pesquisando aqui, e em outros lugares. Podia entao adaptar o que pedi no codigo que fiz acima ?

Grato

Re: Macro para envio de pedido

Enviado: 24 Nov 2015 às 07:32
por alexandrevba
Bom dia!!

Onde eu trabalho não uso outlook, eu não consigo testar.
Mas leia o artigo atentamente, está bem expociativo!

Para...
pegando uma conta de envio diferente.
Já tentou usar
NovoArquivoXLS.SendMail [SuaCelula].Value, "Pedido " & [I9].Value
No lugar de:
NovoArquivoXLS.SendMail "vendas@profitlabs.com.br", "Pedido " & [I9].Value

Escrevendo no corpo do email.
'http://www.rondebruin.nl/win/s1/outlook/bmail2.htm
Código: Selecionar todos
Set rng = Sheets("YourSheet").Range("D4:D12").SpecialCells(xlCellTypeVisible)
Código: Selecionar todos
With OutMail
        .To = "ron@debruin.nl"
        .CC = ""
        .BCC = ""
        .Subject = "This is the Subject line"
        .HTMLBody = RangetoHTML(rng) 'Veja aqui
        .Send   'or use .Display
    End With
Att