使用VBA在电子邮件正文中插入文本

时间:2013-10-18 10:46:35

标签: excel-vba outlook-vba vba excel

我正在使用以下VBA宏从Excel发送一系列单元格

ActiveSheet.Range("A2:Q133").Select
ActiveWorkbook.EnvelopeVisible = True

   With ActiveSheet.MailEnvelope
    .Introduction = "demo"
      .Item.To = "abc@abc.com"
      .Item.Subject = "Testing mail"
      .Item.Send
   End With 

我想修改代码以在最后插入一些文本。 我尝试使用

.Item.HTMLBody = "Random text"

但邮件不包含文字。

如果我做错了什么,请告诉我,这是正确的方法。 提前谢谢!

1 个答案:

答案 0 :(得分:1)

使用MailEnvelope,您可以将整个工作表作为电子邮件正文发送。

简介允许您在mail item之前添加一些文本,但您没有其他方法可以在最后添加内容而不是在Excel表格中附加内容。

即使您修改了BodyHTMLBody,这也不会对电子邮件产生影响。

也许您可以尝试将该消息添加为草稿并将其重新打开为另一个对象来修改它,但它似乎过于复杂。只需在excel spreasheet的末尾添加一些临时文本并在.Item.Send

之后删除它就容易多了