Как отправить определенную диаграмму по электронной почте с помощью VBA в Excel?
Вы, возможно, знаете, как отправить электронное письмо через Outlook в Excel с помощью кода VBA. Однако знаете ли вы, как вставить определенную диаграмму из конкретного листа в тело электронного письма? Эта статья покажет вам метод решения этой проблемы.
Отправка определенной диаграммы по электронной почте в Excel с помощью кода VBA
Отправка определенной диаграммы по электронной почте в Excel с помощью кода VBA
Пожалуйста, выполните следующие действия, чтобы отправить определенную диаграмму по электронной почте с помощью кода VBA в Excel.
1. На листе, содержащем диаграмму, которую вы хотите вставить в тело электронного письма, нажмите клавиши Alt + F11, чтобы открыть окно Microsoft Visual Basic for Applications.
2. В окне Microsoft Visual Basic for Applications нажмите Вставить > Модуль. Затем скопируйте приведенный ниже код VBA в окно Кода.
Код VBA: Отправка определенной диаграммы по электронной почте в 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
Примечание: В коде измените адрес электронной почты получателя и тему письма в строках .To = "xrr@163.com" и .Subject = "Add Chart in outlook mail body", Sheet1 — это лист, который содержит диаграмму, которую вы хотите отправить, пожалуйста, измените его на свой собственный.
3. Нажмите клавишу F5 для запуска кода. В открывшемся диалоговом окне Kutools for Excel введите имя диаграммы, которую вы хотите вставить в тело электронного письма, а затем нажмите кнопку ОК. См. скриншот:
Затем автоматически создается электронное письмо с указанной диаграммой, отображаемой в теле письма, как показано на скриншоте ниже. Пожалуйста, нажмите кнопку Отправить, чтобы отправить это письмо.

Раскройте магию Excel с Kutools AI
- Умное выполнение: Выполняйте операции с ячейками, анализируйте данные и создавайте диаграммы — всё это посредством простых команд.
- Пользовательские формулы: Создавайте индивидуальные формулы для оптимизации ваших рабочих процессов.
- Кодирование VBA: Пишите и внедряйте код VBA без особых усилий.
- Интерпретация формул: Легко разбирайтесь в сложных формулах.
- Перевод текста: Преодолейте языковые барьеры в ваших таблицах.
Связанные статьи:
- Как автоматически отправлять электронные письма на основе значения ячейки в Excel?
- Как вставить подпись в электронное письмо Outlook при отправке через VBA в Excel?
- Как отправить электронное письмо в определенное время дня в Excel?
- Как отправить электронное письмо с HTML-телом письма в Excel?
- Как отправить электронное письмо с указанным форматированием текста (жирный/размер/цвет/подчеркивание) в Excel?
- Как отправить электронное письмо без использования Outlook в Excel?
Лучшие инструменты для повышения продуктивности работы с Office
Ускорьте работу в Excel с Kutools для Excel и ощутите новую степень эффективности. Kutools для Excel предлагает более300 расширенных функций для повышения продуктивности и экономии времени. Нажмите здесь, чтобы выбрать нужную вам функцию...
Office Tab добавляет вкладки в Office и делает вашу работу намного проще
- Включите редактирование и чтение с вкладками в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Открывайте и создавайте несколько документов во вкладках одного окна, а не в отдельных окнах.
- Увеличьте свою продуктивность на50% и сократите сотни лишних кликов мышью каждый день!