Comment envoyer un graphique spécifique dans un e-mail avec vba dans Excel?
Vous savez peut-être comment envoyer un e-mail via Outlook dans Excel avec le code VBA. Cependant, savez-vous comment joindre un graphique spécifique dans une certaine feuille de calcul dans le corps de l'e-mail? Cet article vous montrera la méthode pour résoudre ce problème.
Envoyer un graphique spécifique dans un e-mail dans Excel avec le code VBA
Envoyer un graphique spécifique dans un e-mail dans Excel avec le code VBA
Veuillez procéder comme suit pour envoyer un graphique spécifique dans un e-mail avec le code VBA dans Excel.
1. Dans la feuille de calcul contient le graphique que vous souhaitez joindre au corps de l'e-mail, appuyez sur le bouton autre + F11 clés pour ouvrir le Microsoft Visual Basic pour applications fenêtre.
2. dans le Microsoft Visual Basic pour applications fenêtre, veuillez cliquer insérer > Module. Copiez ensuite le code VBA ci-dessous dans la fenêtre Code.
Code VBA: envoyer un graphique spécifique dans un e-mail dans 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 = "xrr@163.com"
.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
Notes: Dans le code, veuillez modifier l'adresse e-mail du destinataire et l'objet de l'e-mail en ligne .To = "xrr@163.com" et la ligne .Subject = "Ajouter un graphique dans le corps du courrier Outlook" , Sheet1 est la feuille qui contient le graphique que vous souhaitez envoyer, veuillez la changer pour la vôtre.
3. appuie sur le F5 clé pour exécuter le code. Dans l'ouverture Kutools for Excel boîte de dialogue, entrez le nom du graphique que vous joindrez dans le corps de l'e-mail, puis cliquez sur le bouton OK bouton. Voir la capture d'écran:
Ensuite, un e-mail est créé automatiquement avec le graphique spécifié affiché dans le corps de l'e-mail comme illustré ci-dessous. Veuillez cliquer sur le bouton Envoyer pour envoyer cet e-mail.
Articles Liés:
- Comment envoyer automatiquement un e-mail en fonction de la valeur de la cellule dans Excel?
- Comment insérer une signature dans un e-mail Outlook lors de l'envoi par vba dans Excel?
- Comment envoyer un e-mail à une heure précise de la journée dans Excel?
- Comment envoyer un e-mail avec un corps d'e-mail HTML dans Excel?
- Comment envoyer un e-mail avec le format de texte gras / taille / couleur / souligné dans Excel?
- Comment envoyer un e-mail sans Outlook dans Excel?
Meilleurs outils de productivité bureautique
Améliorez vos compétences Excel avec Kutools for Excel et faites l'expérience d'une efficacité comme jamais auparavant. Kutools for Excel offre plus de 300 fonctionnalités avancées pour augmenter la productivité et gagner du temps. Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...
Office Tab apporte une interface à onglets à Office et facilite grandement votre travail
- Activer l'édition et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
- Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
- Augmente votre productivité de 50% et réduit des centaines de clics de souris chaque jour!