Come inviare un grafico specifico in un'e-mail con vba in Excel?
Potresti sapere come inviare un'e-mail tramite Outlook in Excel con codice VBA. Tuttavia, sai come allegare un grafico specifico in un determinato foglio di lavoro nel corpo dell'email? Questo articolo ti mostrerà il metodo per risolvere questo problema.
Invia un grafico specifico in un'e-mail in Excel con codice VBA
Invia un grafico specifico in un'e-mail in Excel con codice VBA
Si prega di fare quanto segue per inviare un grafico specifico in un'e-mail con codice VBA in Excel.
1. Nel foglio di lavoro che contiene il grafico che si desidera allegare al corpo dell'e-mail, premere il tasto altro + F11 chiavi per aprire il Microsoft Visual Basic, Applications Edition finestra.
2. Nel Microsoft Visual Basic, Applications Edition finestra, fare clic inserire > Moduli. Quindi copia sotto il codice VBA nella finestra del codice.
Codice VBA: invia un grafico specifico in un'e-mail in 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
Note:: Nel codice, modificare l'indirizzo e-mail del destinatario e l'oggetto dell'e-mail in linea .A = "" e la linea .Subject = "Aggiungi grafico nel corpo della posta di Outlook" , Sheet1 è il foglio che contiene il grafico che vuoi inviare, per favore cambialo con il tuo.
3. premi il F5 chiave per eseguire il codice. In apertura Kutools for Excel finestra di dialogo, immettere il nome del grafico da allegare nel corpo dell'e-mail, quindi fare clic su OK pulsante. Vedi screenshot:
Quindi viene creata automaticamente un'e-mail con il grafico specificato visualizzato nel corpo dell'e-mail come mostrato nell'immagine sottostante. Fare clic sul pulsante Invia per inviare questa email.
Articoli correlati:
- Come inviare automaticamente e-mail in base al valore della cella in Excel?
- Come inserire la firma nell'e-mail di Outlook quando si invia tramite vba in Excel?
- Come inviare un'e-mail in un momento specifico della giornata in Excel?
- Come inviare e-mail con il corpo dell'e-mail HTML in Excel?
- Come inviare e-mail con il formato di testo grassetto / dimensione / colore / sottolineato in Excel?
- Come inviare e-mail senza Outlook in Excel?
I migliori strumenti per la produttività in ufficio
Potenzia le tue competenze di Excel con Kutools per Excel e sperimenta l'efficienza come mai prima d'ora. Kutools per Excel offre oltre 300 funzionalità avanzate per aumentare la produttività e risparmiare tempo. Fai clic qui per ottenere la funzionalità di cui hai più bisogno...
Office Tab porta l'interfaccia a schede in Office e semplifica notevolmente il tuo lavoro
- Abilita la modifica e la lettura a schede in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Apri e crea più documenti in nuove schede della stessa finestra, piuttosto che in nuove finestre.
- Aumenta la produttività del 50% e riduce ogni giorno centinaia di clic del mouse!