Làm cách nào để gửi một biểu đồ cụ thể trong email bằng vba trong Excel?
Bạn có thể biết cách gửi email qua Outlook trong Excel với mã VBA. Tuy nhiên, bạn có biết cách đính kèm một biểu đồ cụ thể trong một trang tính nhất định vào phần nội dung của email không? Bài viết này sẽ chỉ cho bạn phương pháp để giải quyết vấn đề này.
Gửi một biểu đồ cụ thể trong email trong Excel với mã VBA
Gửi một biểu đồ cụ thể trong email trong Excel với mã VBA
Vui lòng thực hiện như sau để gửi biểu đồ cụ thể trong email có mã VBA trong Excel.
1. Trong trang tính có chứa biểu đồ bạn muốn đính kèm trong nội dung email, hãy nhấn Khác + F11 phím để mở Microsoft Visual Basic cho các ứng dụng cửa sổ.
2. bên trong Microsoft Visual Basic cho các ứng dụng cửa sổ, vui lòng nhấp vào Chèn > Mô-đun. Sau đó sao chép mã VBA bên dưới vào cửa sổ Mã.
Mã VBA: Gửi một biểu đồ cụ thể trong email trong 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
Chú thích: Trong mã, vui lòng thay đổi địa chỉ email của người nhận và chủ đề email trong dòng .To = "" và dòng .Subject = "Thêm biểu đồ trong nội dung thư outlook" , Sheet1 là trang tính chứa biểu đồ bạn muốn gửi, vui lòng thay đổi nó thành biểu đồ của riêng bạn.
3. Nhấn nút F5 phím để chạy mã. Trong phần mở đầu Kutools cho Excel hộp thoại, nhập tên của biểu đồ bạn sẽ đính kèm trong nội dung email, sau đó bấm vào OK cái nút. Xem ảnh chụp màn hình:
Sau đó, một email được tạo tự động với biểu đồ được chỉ định hiển thị trong nội dung email như ảnh chụp màn hình bên dưới. Vui lòng nhấp vào nút Gửi để gửi email này.
Các bài liên quan:
- Làm cách nào để tự động gửi email dựa trên giá trị ô trong Excel?
- Làm cách nào để chèn chữ ký vào email Outlook khi gửi bằng vba trong Excel?
- Làm cách nào để gửi email vào thời điểm cụ thể trong ngày trong Excel?
- Làm thế nào để gửi email với nội dung email HTML trong Excel?
- Làm thế nào để gửi email với định dạng văn bản đậm / kích thước / màu / gạch dưới được chỉ định trong Excel?
- Làm thế nào để gửi email mà không cần Outlook trong Excel?
Công cụ năng suất văn phòng tốt nhất
Nâng cao kỹ năng Excel của bạn với Kutools for Excel và trải nghiệm hiệu quả hơn bao giờ hết. Kutools for Excel cung cấp hơn 300 tính năng nâng cao để tăng năng suất và tiết kiệm thời gian. Bấm vào đây để có được tính năng bạn cần nhất...
Tab Office mang lại giao diện Tab cho Office và giúp công việc của bạn trở nên dễ dàng hơn nhiều
- Cho phép chỉnh sửa và đọc theo thẻ trong Word, Excel, PowerPoint, Publisher, Access, Visio và Project.
- Mở và tạo nhiều tài liệu trong các tab mới của cùng một cửa sổ, thay vì trong các cửa sổ mới.
- Tăng 50% năng suất của bạn và giảm hàng trăm cú nhấp chuột cho bạn mỗi ngày!