Як надіслати певну діаграму в електронному листі за допомогою vba в Excel?
Можливо, ви знаєте, як надіслати електронне повідомлення через Outlook в Excel із кодом VBA. Однак чи знаєте ви, як прикріпити конкретну діаграму на певному аркуші до тіла електронного листа? Ця стаття покаже вам спосіб вирішення цієї проблеми.
Надішліть конкретну діаграму електронною поштою в Excel із кодом VBA
Надішліть конкретну діаграму електронною поштою в Excel із кодом VBA

Будь ласка, виконайте наступні дії, щоб надіслати певну діаграму електронним листом із кодом VBA в Excel.
1. На робочому аркуші міститься діаграма, яку ви хочете вкласти в тіло електронної пошти, натисніть клавішу інший + F11 ключі, щоб відкрити Microsoft Visual Basic для додатків вікна.
2 В Microsoft Visual Basic для додатків вікно, натисніть Insert > Модулі. Потім скопіюйте код 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=" & "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 = "Додати діаграму в тіло пошти Outlook" , Sheet1 це аркуш, який містить діаграму, яку ви хочете надіслати, будь ласка, змініть її на свою.
3 Натисніть кнопку F5 клавіша для запуску коду. На відкритті Kutools для Excel діалогове вікно, введіть назву діаграми, яку ви вкладете, в тіло електронної пошти, а потім клацніть на OK кнопку. Дивіться знімок екрана:
Потім електронне повідомлення створюється автоматично із зазначеною діаграмою, яка відображається в тілі електронної пошти, як показано на знімку екрана нижче. Натисніть кнопку Надіслати, щоб надіслати цей електронний лист.
Статті по темі:
- Як автоматично надсилати електронну пошту на основі значення комірки в Excel?
- Як вставити підпис в електронну пошту Outlook під час надсилання за допомогою vba в Excel?
- Як надіслати електронне повідомлення в певний час доби в Excel?
- Як надіслати електронну пошту з тілом електронної пошти HTML в Excel?
- Як надіслати електронний лист із зазначеним жирним / розміром / кольором / підкресленням текстовим форматом у Excel?
- Як надіслати електронну пошту без Outlook у Excel?
Найкращі інструменти для підвищення продуктивності офісу
Kutools для Excel вирішує більшість ваших проблем і збільшує продуктивність на 80%
- Повторне використання: Швидко вставте складні формули, діаграми і все, що ви використовували раніше; Шифрувати комірки з паролем; Створити список розсилки та надсилати електронні листи ...
- Супер формула бар (легко редагувати кілька рядків тексту та формули); Макет читання (легко читати та редагувати велику кількість комірок); Вставте у відфільтрований діапазон...
- Об’єднати клітинки / рядки / стовпці без втрати даних; Вміст розділених комірок; Об'єднати повторювані рядки / стовпці... Запобігання дублюючим клітинам; Порівняйте діапазони...
- Виберіть Повторюваний або Унікальний Рядки; Виберіть Пусті рядки (усі клітинки порожні); Супер знахідка та нечітка знахідка у багатьох робочих зошитах; Випадковий вибір ...
- Точна копія Кілька клітинок без зміни посилання на формулу; Автоматичне створення посилань на кілька аркушів; Вставте кулі, Прапорці та інше ...
- Витяг тексту, Додати текст, Видалити за позицією, Видаліть пробіл; Створення та друк проміжних підсумків підкачки; Перетворення вмісту комірок та коментарів...
- Супер фільтр (зберегти та застосувати схеми фільтрів до інших аркушів); Розширене сортування за місяцем / тижнем / днем, частотою та іншим; Спеціальний фільтр жирним, курсивом ...
- Поєднайте робочі зошити та робочі аркуші; Об’єднати таблиці на основі ключових стовпців; Розділіть дані на кілька аркушів; Пакетне перетворення xls, xlsx та PDF...
- Понад 300 потужних функцій. Підтримує Office / Excel 2007-2019 та 365. Підтримує всі мови. Простота розгортання на вашому підприємстві чи в організації. Повна функція 30-денної безкоштовної пробної версії. 60-денна гарантія повернення грошей.

Вкладка Office забезпечує інтерфейс з вкладками для Office і значно спрощує вашу роботу
- Увімкніть редагування та читання на вкладках у Word, Excel, PowerPoint, Publisher, Access, Visio та Project.
- Відкривайте та створюйте кілька документів на нових вкладках того самого вікна, а не в нових вікнах.
- Збільшує вашу продуктивність на 50% та зменшує сотні клацань миші для вас щодня!









