Hur skickar jag ett specifikt diagram i ett e-postmeddelande med vba i Excel?
Du kanske vet hur du skickar ett e-postmeddelande via Outlook i Excel med VBA-kod. Men vet du hur du bifogar ett visst diagram i ett visst kalkylblad i e-postens kropp? Denna artikel kommer att visa dig metoden för att lösa detta problem.
Skicka ett specifikt diagram i ett e-postmeddelande i Excel med VBA-kod
Skicka ett specifikt diagram i ett e-postmeddelande i Excel med VBA-kod
Gör så här för att skicka ett specifikt diagram i ett e-postmeddelande med VBA-kod i Excel.
1. I kalkylbladet innehåller diagrammet du vill bifoga i e-posttexten, tryck på andra + F11 nycklar för att öppna Microsoft Visual Basic för applikationer fönster.
2. I Microsoft Visual Basic för applikationer klicka på fönstret Insert > Modulerna. Kopiera sedan VBA-koden nedan till kodfönstret.
VBA-kod: Skicka ett specifikt diagram i ett e-postmeddelande i 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
Anmärkningar: Ändra mottagarens e-postadress och e-postens ämne i koden i koden .Till = "" och linje .Subject = "Lägg till diagram i Outlook-e-posttexten" , Sheet1 är arket som innehåller diagrammet du vill skicka, ändra det till ditt eget.
3. tryck på F5 för att köra koden. I öppningen Kutools för Excel dialogrutan, ange namnet på diagrammet som du ska bifoga i e-posttexten och klicka sedan på OK knapp. Se skärmdump:
Sedan skapas ett e-postmeddelande automatiskt med det angivna diagrammet som visas i e-postkroppen som visas nedan. Klicka på knappen Skicka för att skicka detta e-postmeddelande.
Relaterade artiklar:
- Hur skickar man automatiskt e-post baserat på cellvärde i Excel?
- Hur infogar jag signatur i Outlook-e-post när du skickar med vba i Excel?
- Hur skickar jag ett e-postmeddelande vid en specifik tid på dagen i Excel?
- Hur skickar jag e-post med HTML-e-post i Excel?
- Hur skickar jag e-post med angivet fetstil / storlek / färg / understruket textformat i Excel?
- Hur skickar jag e-post utan Outlook i Excel?
Bästa kontorsproduktivitetsverktyg
Uppgradera dina Excel-färdigheter med Kutools för Excel och upplev effektivitet som aldrig förr. Kutools för Excel erbjuder över 300 avancerade funktioner för att öka produktiviteten och spara tid. Klicka här för att få den funktion du behöver mest...
Fliken Office ger ett flikgränssnitt till Office och gör ditt arbete mycket enklare
- Aktivera flikredigering och läsning i Word, Excel, PowerPoint, Publisher, Access, Visio och Project.
- Öppna och skapa flera dokument i nya flikar i samma fönster, snarare än i nya fönster.
- Ökar din produktivitet med 50 % och minskar hundratals musklick för dig varje dag!