将附件图片添加到办公室16 / O365的html电子邮件正文中

时间:2017-07-27 13:39:05

标签: excel vba outlook

我一直在办公室2013中使用此代码:

With OutMail
            .Attachments.Add fName
            .HTMLBody = .HTMLBody & "<br><B>" & ChartName &   :</B><br>" _ & "<img src='" & fName(i) & "' width='800'  height='400'><br>" _

            .Display
        End With

其中fName是png文件的完整路径,Chartname只是图表的标题。

这一直很好但现在在办公室2016 / O365这个代码将一个空的html表粘贴到outloop电子邮件中,没有任何图形或图片可见。 任何指针如何解决这个问题将不胜感激?

2 个答案:

答案 0 :(得分:1)

.HTMLBody系列上有错误。试试这个:

_

我添加了引号并删除了不需要的number1a = parseInt(document.getElementById('number1a').value); number1b = parseInt(document.getElementById('number1b').value);

答案 1 :(得分:0)

使用PR_ATTACH_CONTENT_ID创建附件并设置"http://schemas.microsoft.com/mapi/proptag/0x3712001F"属性(DASL名称Attachment.PropertyAccessor)。

您的HTML正文(MailItem.HTMLBody属性)需要通过cid引用该图片附件:

img src="cid:xyz"

其中xyz是PR_ATTACH_CONTENT_ID属性的值。

查看包含OutlookSpy的现有邮件(单击IMessage按钮)。

attachment = mailitem.Attachments.Add("c:\temp\MyPicture.jpg")
attachment.PropertyAccessor.SetProperty("http://schemas.microsoft.com/mapi/proptag/0x3712001F", "MyId1")
mailitem.HTMLBody = "<html><body>Test image <img src=""cid:MyId1""></body></html>"