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 > Modulo. 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 = "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
Note:: Nel codice, modificare l'indirizzo e-mail del destinatario e l'oggetto dell'e-mail in linea .To = "xrr@163.com" 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
Kutools per Excel risolve la maggior parte dei tuoi problemi e aumenta la tua produttività dell'80%
- Riutilizzo: Inserisci rapidamente formule complesse, grafici e tutto ciò che hai usato prima; Crittografa celle con password; Crea mailing list e invia email ...
- Bar Super Formula (modifica facilmente più righe di testo e formula); Layout di lettura (leggi e modifica facilmente un gran numero di celle); Incolla su intervallo filtrato...
- Unisci celle / righe / colonne senza perdere dati; Contenuto delle celle divise; Combina righe / colonne duplicate... Impedisci celle duplicate; Confronta intervalli...
- Seleziona Duplica o Unico Righe; Seleziona Righe vuote (tutte le celle sono vuote); Super Find e Fuzzy Find in molte cartelle di lavoro; Selezione casuale ...
- Copia esatta Più celle senza modificare il riferimento della formula; Riferimenti di creazione automatica a più fogli; Inserisci punti elenco, Caselle di controllo e altro ...
- Estrai testo, Aggiungi testo, Rimuovi per posizione, Rimuovi spazio; Creare e stampare totali parziali di paging; Converti contenuto e commenti tra celle...
- Super filtro (salva e applica schemi di filtri ad altri fogli); Ordinamento avanzato per mese / settimana / giorno, frequenza e altro; Filtro speciale in grassetto, corsivo ...
- Combina cartelle di lavoro e fogli di lavoro; Unisci tabelle in base a colonne chiave; Suddividi i dati in più fogli; Conversione in batch xls, xlsx e PDF...
- Più di 300 potenti funzionalità. Supporta Office/Excel 2007-2021 e 365. Supporta tutte le lingue. Facile implementazione nella tua azienda o organizzazione. Funzionalità complete Prova gratuita di 30 giorni. Garanzia di rimborso di 60 giorni.

Scheda Office porta l'interfaccia a schede a Office e semplifica notevolmente il 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!













