1

我从如何使用 Outlook 向 Excel VBA 中的多个收件人发送电子邮件中复制了整个代码块,并在电子邮件末尾添加了一个签名。

With OutMail
    .Display
End With
    Signature = OutMail.Body
With OutMail
    .To = sTo
    .CC = sCC
    .BCC = ""
    .Subject = Worksheets("MassEmail").Range("A2") & " WW" & Worksheets("MassEmail").Range("B1")
    sHTML = "<HTML><BODY><FONT face=""Calibri, Arial"">"
    sHTML = sHTML & "<p style=""font-size:11pt"">Hi,</p>"
    sHTML = sHTML & "<p style=""font-size:11pt"">Here is the RMA list WW" & Worksheets("MassEmail").Range("B1") & ".  Please review.</p>"
    sHTML = sHTML & "<pre style=""font-size:11pt;font-family:Calibri,Arial"">     Total: </pre>"
    .HTMLBody = sHTML & Signature
    .HTMLBody = .HTMLBody & "</FONT></BODY></HTML>"
End With

这就是签名的外观。
原始签名

除了签名,输出没问题。 HTML正文

我尝试将 .htmlbody 更改为 .body,但结果更糟。

.body 的输出。 身体

我正在使用 Excel/Outlook 2007。

4

1 回答 1

0

您需要将消息的格式设置为 RichText 或 HTMLFormat

olFormatHTMLolFormatRichText

然后使用MailItem.HTMLBody="...."

在VBA MVP Legend Ron De Bruin的网站上有更多信息

从 Excel 发送邮件的示例代码

于 2013-04-02T09:01:24.947 回答