html - 通过邮件发送 Excel 工作表图像
问题描述
我有一个带有嵌入图像的 Excel。
如何使用图像名称通过邮件发送?我不想附加发送它,我想将它嵌入到邮件的 html 中。这是可能的?
非常感谢您提前
示例代码:
With objMail
'Set body format to HTML
.BodyFormat = olFormatHTML
.To = Sheet3.Range(inTo)
If (inAttach1 <> "") Then .Attachments.Add inAttach1
If (inAttach2 <> "") Then .Attachments.Add inAttach2
If (Sheet3.Range(inCC) <> "") Then .CC = Sheet3.Range(inCC)
sBody = Sheet1.Range("B2").Value
'----insert Name
iPos = InStr(1, sBody, "[FirstName]", vbTextCompare)
iPos2 = iPos + Len("[FirstName]")
sText1 = Mid(sBody, 1, iPos - 1)
sText2 = Mid(sBody, iPos2, Len(sBody) - iPos2 + 1)
sBody = sText1 & Sheet3.Range(inName) & sText2
.Subject = inSubj
.SentOnBehalfOfName = inFrom
.HTMLBody = sBody
'Importancia mail
'.Importance = olImportanceHigh
.sEnd
End With
解决方案
创建附件并使用 设置PR_ATTACH_CONTENT_ID
属性(DASL 名称"http://schemas.microsoft.com/mapi/proptag/0x3712001F"
)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>"
推荐阅读
- javascript - 我想使用 javascript 切换 CSS 属性
- python - 在 docker 内部运行 python 测试并在主机外部获取退出代码
- git - 在谷歌云构建中使用 git 容器进行 git commit
- flutter - Flutter:如何检查 DataSnapshot 是否为空?
- android - Flutter-ListView 溢出
- javascript - 在数据表上添加条件多列过滤器
- pyspark - Pyspark ..滞后于生成/计算的列
- rest - 子 api 的包装器 api (ASP.NET Core2)
- c# - 将怪物变量传递给战斗控制器
- forms - 我想创建一个在多页中使用的页眉和页脚。我可以编写一次代码并在 xamarin 表单的多个页面上调用它吗