【发布时间】:2015-08-13 16:19:50
【问题描述】:
我正在尝试将 Excel 工作表中的文本(单元格的恒定范围)和图表复制到 Outlook 正文,但是到目前为止,我成功地仅复制了图表而不是文本。我想知道将文本(在选定范围内)和图表从 Excel 表复制到 Outlook 消息的最佳方法。下面是我现在使用的代码。此代码确实粘贴了文本,但图表与文本重叠(当图表粘贴在电子邮件正文中时)。我想如何格式化 Outlook 电子邮件并粘贴文本和图表而不重叠。
Sub email_Charts(sFileName, Subject1)
Dim r As Integer
Dim o As Outlook.Application
Dim m As Outlook.MailItem
Dim wEditor As Word.Document
Set o = New Outlook.Application
Dim olTo As String
Windows("Daily_Status_Macro_Ver3.0.xlsm").Activate
Sheets("Main").Select
olTo = Worksheets("Main").Cells(3, 3).Value
Windows(sFileName).Activate
msg = "<HTML><font face = Calibri =2>"
msg = msg & "Hi All, <br><br>"
msg = msg & "Please find Daily Status Below "
msg = msg & "<b><font color=#0033CC>"
msg = msg & Sheets(1).Range("B2:B4")
Set m = o.CreateItem(olMailItem)
m.To = olTo
m.Subject = Subject1
m.BodyFormat = olFormatHTML
m.HTMLBody = msg
m.Display
Windows(sFileName).Activate
Sheets(1).Select
ActiveSheet.DrawingObjects.Select
Selection.Copy
Set wEditor = o.ActiveInspector.wordeditor
m.Body = msg
wEditor.Application.Selection.Paste
'm.send
Workbooks(sFileName).Close SaveChanges:=False
End Sub
【问题讨论】:
-
Ron de Bruin 拥有适用于所有可能场景的代码。你的在这里:rondebruin.nl/win/s1/div/mail4.htm