Como enviar um gráfico específico em um email com vba no Excel?
Você pode saber como enviar um e-mail pelo Outlook no Excel com código VBA. No entanto, você sabe como anexar um gráfico específico em uma determinada planilha no corpo do e-mail? Este artigo mostrará a você o método para resolver esse problema.
Envie um gráfico específico em um e-mail no Excel com código VBA
Envie um gráfico específico em um e-mail no Excel com código VBA
Faça o seguinte para enviar um gráfico específico em um e-mail com o código VBA no Excel.
1. Na planilha que contém o gráfico que você deseja anexar ao corpo do e-mail, pressione o botão outro + F11 chaves para abrir o Microsoft Visual Basic para Aplicações janela.
2. No Microsoft Visual Basic para Aplicações janela, por favor clique inserção > Módulo. Em seguida, copie o código do VBA abaixo para a janela de código.
Código VBA: Envie um gráfico específico em um e-mail no Excel
Sub mailHTMLsend()
'Updated by Extendoffice 2018/3/5
Dim xOutApp As Object
Dim xOutMail As Object
Dim xStartMsg As String
Dim xEndMsg As String
Dim xChartName As String
Dim xChartPath As String
Dim xPath As String
Dim xChart As ChartObject
On Error Resume Next
xChartName = Application.InputBox("Please enter the chart name:", "KuTools for Excel", , , , , , 2)
If xChartName = "" Then Exit Sub
Set xChart = Sheets("Sheet1").ChartObjects(xChartName) 'Change "Sheet1" to your worksheet name
If xChart Is Nothing Then Exit Sub
Set xOutApp = CreateObject("Outlook.Application")
Set xOutMail = xOutApp.CreateItem(0)
xStartMsg = "<font size='5' color='black'> Good Day," & "<br> <br>" & "Please find the chart below: " & "<br> <br> </font>"
xEndMsg = "<font size='4' color='black'> Many Thanks," & "<br> <br> </font>"
xChartPath = Application.ActiveWorkbook.Path & "\" & Environ("USERNAME") & VBA.Format(VBA.Now(), "DD_MM_YY_HH_MM_SS") & ".bmp"
xPath = "<p align='Left'><img src=" & "cid:" & Mid(xChartPath, InStrRev(xChartPath, "\") + 1) & """ width=700 height=500 > <br> <br>"
xChart.Chart.Export xChartPath
With xOutMail
.To = ""
.Subject = "Add Chart in outlook mail body"
.Attachments.Add xChartPath
.HTMLBody = xStartMsg & xPath & xEndMsg
.Display
End With
Kill xChartPath
Set xOutMail = Nothing
Set xOutApp = Nothing
End Sub
Anote os: No código, altere o endereço de e-mail do destinatário e o assunto do e-mail na linha .Para = "" e linha .Subject = "Adicionar gráfico no corpo do correio do Outlook" , Sheet1 é a folha que contém o gráfico que deseja enviar, altere-o para o seu.
3. aperte o F5 chave para executar o código. Na abertura Kutools for Excel caixa de diálogo, digite o nome do gráfico que você anexará no corpo do e-mail e clique no botão OK botão. Veja a imagem:
Em seguida, um e-mail é criado automaticamente com o gráfico especificado mostrado no corpo do e-mail, conforme a captura de tela abaixo. Clique no botão Enviar para enviar este e-mail.
Artigos relacionados:
- Como enviar e-mail automaticamente com base no valor da célula no Excel?
- Como inserir assinatura no e-mail do Outlook ao enviar por vba no Excel?
- Como enviar um e-mail em um horário específico do dia no Excel?
- Como enviar e-mail com corpo de e-mail em HTML no Excel?
- Como enviar e-mail com o formato de texto em negrito / tamanho / cor / sublinhado especificado no Excel?
- Como enviar e-mail sem Outlook no Excel?
Melhores ferramentas de produtividade de escritório
Aprimore suas habilidades de Excel com Kutools for Excele experimente eficiência como nunca antes. Kutools for Excel Oferece mais de 300 recursos avançados para aumentar a produtividade e economizar tempo. Clique aqui para obter o recurso que você mais precisa...
Office Tab Traz a interface com guias para o Office e torna seu trabalho muito mais fácil
- Habilite a edição e leitura com guias em Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Abra e crie vários documentos em novas guias da mesma janela, em vez de em novas janelas.
- Aumenta sua produtividade em 50% e reduz centenas de cliques do mouse para você todos os dias!













