Notifications
Clear all

FILTRO DE DINAMICA, COPIAR PARA CORPO DO EMAIL E ANEXAR VBA

3 Posts
2 Usuários
0 Reactions
943 Visualizações
(@jreynaldo)
Posts: 2
New Member
Topic starter
 

Bom dia,preciso de ajuda para finalizar um código.
Sou iniciante no VB e estou tendo uma dificuldade que nao to conseguindo andar.

Preciso criar uma macro que envie uma tabela no corpo do e-mail que deve ser filtrada pela dinamica de acordo com o envio.
E o envio deve ser para e-mail distintos de arco com a filial
E ainda no final de tudo anexar o arquivo no corpo do e-mail, de preferencia ocultando ou excluindo a "aba" onde estão os e-mails.

Pra exemplificar.

Na aba "Capa_email" vão estar as informações à serem enviadas
Na aba "Email" vão estar as informações das filiais, e-mail (para e cc), assunto e introdução
Na aba "Base" vai estar a base de toda informação que vai ser gerada na Capa_email

Então o envio dos e-mails precisa ser de acordo com a filial que vai estar na "E-mail" por filial e filtrando de acordo com a "Capa_email" e no final anexar a planilha em na mensagem.

Conseguir fazer o codigo pela metade, ele só copia a área que quero, cola no e-mail e anexa a planilha, mas nao consigo fazer o filtro dinamico no VBA e nem para que seja automatizado por filial.

Segue codigo

Sub divulgacao_corpo_anexo()
      
' o ("E-mail") deveria ir descendo de acordo com o envio anterior'
' o ("Capa_email") precisaria ir sendo filtrado conforme mudando fosse sendo enviado de acorodo com a filial no ("e-mail)

   ' Emvia e-mail para o RIO'
    
   '---Copia a área para ser enviada da filial'
    Sheets("CAPA_EMAIL").Activate
    ActiveSheet.Range("A1:L28").Select
    ActiveWorkbook.EnvelopeVisible = True
    
   '---Anexa e envia a planilha no e-mail'
   With ActiveSheet.MailEnvelope
    
      .Item.Attachments.Add ActiveWorkbook.FullName
      .Introduction = ActiveWorkbook.Sheets("EMAIL").Range("F2") 
      .Item.To = ActiveWorkbook.Sheets("EMAIL").Range("C2")
      .Item.CC = ActiveWorkbook.Sheets("EMAIL").Range("D2")
      .Item.Subject = ActiveWorkbook.Sheets("EMAIL").Range("E2")
      .Item.Send
      
   End With
End Sub

Não sei se conseguir me explicar bem mas acho que da pra entender.
Em anexo a planilha.

 
Postado : 11/05/2018 5:58 am
(@mprudencio)
Posts: 2749
Famed Member
 

Penso que se vai no corpo do email nao ha motivos para enviar anexado.

Enviar duas vezes a mesma informação?

Marcelo Prudencio
Microsoft Excel Brasil no Facebook

"Começar já é a metade do caminho."
Autor Desconhecido

Simplifica que simples fica.
Nicole Tomazella.

"O Simples é Sempre Melhor Que o Complicado"
Jorge Paulo Lemann.

 
Postado : 13/05/2018 4:02 pm
(@jreynaldo)
Posts: 2
New Member
Topic starter
 

MPrudencio, boa tarde.
é necessário ir em anexo.
Consegue me ajudar com a minha duvida?

 
Postado : 14/05/2018 2:14 pm