【发布时间】:2018-12-26 13:24:12
【问题描述】:
如何将 Excel 范围作为纯文本粘贴到 Outlook 电子邮件中 - 我不想要格式,也不想要表格对象。这相当于复制 3 列和 2 行的范围并打开 Outlook 电子邮件正文并执行 Ctrl + Alt + V 并选择选择性粘贴为未格式化的 Unicode 文本。
下面的 sn-p 是将范围粘贴为 HTML 的流行代码。
Sub Mail_Selection_Range_Outlook_Body(sendTo As String, emailSub As String, rangeBody As Range)
Dim rng As Range
Dim OutApp As Object
Dim OutMail As Object
Set rng = Nothing
On Error Resume Next
Set rng = rangeBody
On Error GoTo 0
If rng Is Nothing Then
MsgBox "The selection is not a range or the sheet is protected" & _
vbNewLine & "please correct and try again.", vbOKOnly
Exit Sub
End If
With Application
.EnableEvents = False
.ScreenUpdating = False
End With
Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(0)
On Error Resume Next
With OutMail
.To = sendTo
.CC = ""
.Subject = emailSub
.HTMLBody = RangetoHTML(rng)
.Display 'or use .Display
End With
On Error GoTo 0
With Application
.EnableEvents = True
.ScreenUpdating = True
End With
【问题讨论】:
-
看看这个答案......这是一回事,除了它是将其复制到word文档而不是电子邮件......stackoverflow.com/a/51330579/5040941