【发布时间】:2022-01-06 17:05:53
【问题描述】:
我正在尝试将多个图表从 Excel 复制到 Outlook 中,每个图表都作为位图,并且每个图表都位于同一行且大小相同。下面的代码循环复制每个图表并将它们作为位图成功粘贴到 Outlook 中。但是,它们都出现在每个旁边,根据大小连续 1-3 个。我尝试添加 vbNewLine、vbCrLF 和 <br> 以及其他一些,但它们都删除了所有图表。关于如何将每个图表放在自己的行上以便它们垂直堆叠在电子邮件中并且大小相同的任何想法?这是代码。提前致谢:
Public Sub EmailCharts()
Dim Sht As Excel.Worksheet
Set Sht = ThisWorkbook.ActiveSheet
Dim OutApp As Object
Set OutApp = CreateObject("Outlook.Application")
Dim outMail As Object
Set outMail = OutApp.CreateItem(0)
Dim vInspector As Object
Set vInspector = outMail.GetInspector
Dim wEditor As Object
Set wEditor = vInspector.WordEditor
Dim objChart As Excel.ChartObject
With outMail
.Display
.to = "abc@xyz.com"
.BCC = "abc@xyz.com"
.Subject = "Subject"
For Each objChart In Sht.ChartObjects
objChart.CopyPicture (xlBitmap)
.HTMLBody = wEditor.Range(0, 0).Paste
Next
End With
Set outMail = Nothing
Set OutApp = Nothing
End Sub
【问题讨论】: