Este fórum está sendo desativado

Depois de 9 anos, este fórum será desativado. Mas calma.... estamos migrando para uma comunidade no DISCORD. Junte-se a nós.

ENTRAR PARA DISCORD

Tópicos relacionados a códigos VBA, gravação de macros, etc.
Por AJPozza
Posts
#37073
Pessoal, bom dia!
Estou tentado formular uma Macro que copia alguns gráficos do Excel no corpo do e-mail e além disso anexa a mesma planilha para enviar no mesmo e-mail, a parte de copiar os gráficos eu consegui, porém não estou conseguindo anexar a planilha, segue abaixo a macro:


Sub enviar_corpo_email()

' Seleciona o intervalo de células a serem enviadas por email.
ActiveSheet.Range("N3:AE42").Select

ActiveWorkbook.EnvelopeVisible = True

With ActiveSheet.MailEnvelope
.Introduction = ""
.Item.To = "e-mail@e-mail.com.br"
.Item.CC = "teste@teste.com.br" & ";" & "teste1@teste1.com.br"
.Item.Subject = "Assunto"
.Item.Send
End With

End Sub
#37083
AJPozza escreveu:... porém não estou conseguindo anexar a planilha ...
Se você quer enviar o arquivo Excel (e não a planilha ativa) como anexo, então acrescente a segunda linha abaixo.
Código: Selecionar todos
...
.Item.Subject = "Assunto"
.Item.attachments.Add ActiveWorkbook.FullName
...
Porém, retorne se você quer enviar somente a planilha ativa como anexo, nesse caso será preciso alterar o código para criar uma cópia da planilha como um arquivo separado para poder enviar.
#37090
osvaldomp escreveu:
AJPozza escreveu:... porém não estou conseguindo anexar a planilha ...
Se você quer enviar o arquivo Excel (e não a planilha ativa) como anexo, então acrescente a segunda linha abaixo.
Código: Selecionar todos
...
.Item.Subject = "Assunto"
.Item.attachments.Add ActiveWorkbook.FullName
...
Porém, retorne se você quer enviar somente a planilha ativa como anexo, nesse caso será preciso alterar o código para criar uma cópia da planilha como um arquivo separado para poder enviar.
Opa... já me ajudou! Anexou o arquivo inteiro!!

Existe a possibilidade de encaminhar apenas uma aba com o nome "BASE" ??
#37140
Altere no código a extensão do arquivo se necessário.
Código: Selecionar todos
Sub EmailIntervaloEPlanilha()
 Dim wb As Workbook, kwb As String
  Sheets("BASE").Copy
  Set wb = ActiveWorkbook
  wb.SaveAs ThisWorkbook.Path & "\CÓPIA BASE.xlsx"
  kwb = wb.FullName
  wb.Close
  ActiveSheet.Range("N3:AE42").Select
  ActiveWorkbook.EnvelopeVisible = True
   With ActiveSheet.MailEnvelope
    .Introduction = ""
    .Item.To = "teste@teste.com.br"
    .Item.CC = "teste@teste.com.br"
    .Item.Subject = "Assunto"
    On Error Resume Next
    .Item.Attachments(1).Delete
    On Error GoTo 0
    .Item.Attachments.Add kwb
    .Item.Send
   End With
  Kill kwb
End Sub
dica - para responder clique em + Resposta localizado abaixo da última postagem, só clique em Responder com citação se necessário
#37192
Rapaaazzz.... era exatamente isso que eu queria!!!

Surgiu uma nova ideia na minha cabeça... nessa base que será enviada por e-mail, tem vários nomes de funcionários e eu vou mandar e-mail individualmente...

Na planilha tem um lugar que eu seleciono o nome e faz procv na lista de e-mail e vai ser enviado o e-mail para essa pessoa (a base e os gráficos), porém ao invés de enviar a base completa, teria como a macro reconhecer esse nome que eu seleciono na lista suspensa, separar na base e enviar apenas os itens dessa pessoa?
long long title how many chars? lets see 123 ok more? yes 60

We have created lots of YouTube videos just so you can achieve [...]

Another post test yes yes yes or no, maybe ni? :-/

The best flat phpBB theme around. Period. Fine craftmanship and [...]

Do you need a super MOD? Well here it is. chew on this

All you need is right here. Content tag, SEO, listing, Pizza and spaghetti [...]

Lasagna on me this time ok? I got plenty of cash

this should be fantastic. but what about links,images, bbcodes etc etc? [...]

Estamos migrando para uma comunidade no Discord