Come inviare un grafico specifico via email con VBA in Excel?
Potrebbe già sapere come inviare un'email tramite Outlook da Excel utilizzando codice VBA. Ma sa come inserire direttamente nel corpo dell'email un grafico specifico presente in un determinato foglio di lavoro? Questo articolo le illustrerà il metodo per risolvere proprio questo problema.
Inviare un grafico specifico in un'email in Excel con codice VBA
Inviare un grafico specifico in un'email in Excel con codice VBA
Per inviare un grafico specifico via email utilizzando codice VBA in Excel, proceda nel seguente modo:
1. Nel foglio di lavoro che contiene il grafico da inserire nel corpo dell'email, premi i tasti Alt+F11 per aprire la finestra di Microsoft Visual Basic for Applications.
2. Nella finestra di Microsoft Visual Basic for Applications, fai clic su Inserisci > Modulo. Poi copia il seguente codice VBA nella finestra del codice.
Codice VBA: Inviare un grafico specifico in un'email 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="/%20&%20"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
Nota: nel codice, aggiorna l’indirizzo email del destinatario e l’oggetto dell’email alle righe .To = «xrr@163.com»e .Subject = «Aggiungi grafico nel corpo dell'email di Outlook».Foglio1è il foglio che contiene il grafico da inviare; modificalo in base alle tue esigenze.
3. Premere il tasto F5 per eseguire il codice. Nella finestra di dialogo Kutools per Excel che si apre, immettere il nome del grafico da allegare nel corpo dell'email, quindi fare clic sul pulsante OK. Vedere lo screenshot:

Verrà quindi creata automaticamente un’e-mail con il grafico specificato inserito direttamente nel corpo del messaggio, come illustrato nello screenshot seguente. Clicca sul pulsante Invia per spedire l’e-mail.


Sblocca la magia di Excel con KUTOOLS AI
- Esecuzione intelligente: Esegui operazioni sulle celle, analizza i dati e crea grafici, il tutto con comandi semplici e intuitivi.
- Formule personalizzate: crea formule su misura per ottimizzare i tuoi flussi di lavoro.
- Codifica VBA: Scrivi e implementa codice VBA in modo semplice e immediato.
- Interpretazione delle formule: Comprendi con facilità anche le formule più complesse.
- Traduzione del testo: Superate le barriere linguistiche direttamente nei vostri fogli di calcolo.
Articoli correlati:
- Come inviare automaticamente un'email in base al valore contenuto in una cella di Excel?
- Come si inserisce una firma nell'email di Outlook quando si invia tramite VBA da Excel?
- Come inviare un'email a un'ora specifica della giornata da Excel?
- Come inviare un'email con corpo in HTML da Excel?
- Come inviare un'email con formato testo personalizzato (grassetto, dimensione, colore e sottolineatura) da Excel?
- Come inviare un'email da Excel senza utilizzare Outlook?
Migliori Strumenti per la Produttività in Office
Potenzia le tue competenze in Excel con Kutools per Excel e sperimenta un’efficienza mai vista prima.Kutools per Excel offre oltre 300 funzionalità avanzate per aumentare la produttività e Risparmia tempo.Clicca qui per ottenere la funzionalità di cui hai più bisogno...
Office Tab Porta l'interfaccia a schede in Office e rende il tuo lavoro molto più semplice
- 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 all’interno della stessa finestra, invece che in finestre separate.
- Aumenta la tua produttività del 50 % e risparmia centinaia di clic del mouse ogni giorno!
Tutti i componenti aggiuntivi di Kutools in un unico programma di installazione.
Kutools for Office è la suite che include componenti aggiuntivi per Excel, Word, Outlook e PowerPoint, oltre a Office Tab Pro: la soluzione ideale per i team che lavorano su diverse app di Office.
- Suite completa— componenti aggiuntivi per Excel, Word, Outlook e PowerPoint + Office Tab Pro
- Un unico programma di installazione, una sola licenza— configurazione in pochi minuti (pronto per MSI)
- Funziona meglio insieme— produttività ottimizzata tra le app di Office
- Prova gratuita di 30 giorni con tutte le funzionalità— nessuna registrazione, nessuna carta di credito
- Miglior rapporto qualità-prezzo— risparmia rispetto all’acquisto dei singoli componenti aggiuntivi