系统:Windows 7
软件:Excel 2010
- 本系列讲讲如何使用VBA进行邮件自动分发
- 本文的方法借助于Outlook软件实现
- 今天讲讲如何在邮件正文中插入一张图片,不是以附件的形式展示
- 在
Outlook
中测试成功,在网易邮箱大师中测试只是一张缩略图
Part 1:示例
- 分发一个邮件,邮件的正文附着一张图片
- 目标在于接收方可以快速获取附件信息,无需单独打开
- 例如分发了一份周报,想在正文展示最重要的指标统计柱状图
Outlook效果
网易邮箱大师
Part 2:代码
Sub 邮件预警()
Set sht = ThisWorkbook.Worksheets("示例")
Set outlookApp = CreateObject("Outlook.Application")
Set mail = outlookApp.CreateItem(0)
emailReceiver = sht.Cells(2, "A")
eSubject = sht.Cells(2, "B")
currentPath = ThisWorkbook.Path
file1 = currentPath & "\" & "image.jpg"
eContent = "<html>" & _
"<p style='color:#F00'>学习成绩单</p>" & _
"<table border='2' width='400'>" & _
"<tr><th>序号</th><th>姓名</th><th>语文成绩</th></tr>" & _
"<tr><td>1</td><td>张三</td><td>80</td></tr>" & _
"<tr><td>2</td><td>李四</td><td>90</td></tr>" & _
"<tr><td>3</td><td style='color:#F00;font-weight:bold'>王五</td><td>95</td></tr>" & _
"</table>" & _
"<img src='cid:image.jpg' height=432 width=864>" & _
"</html>"
mail.To = emailReceiver
mail.Subject = eSubject
mail.Attachments.Add (file1)
mail.HTMLBody = eContent
mail.Send
Set outlookApp = Nothing
Set mail = Nothing
MsgBox "已分发邮件"
End Sub
代码截图
Part 3:部分代码解读
<img src='cid:image.jpg' height=432 width=864>
,显示图片mail.Attachments.Add (file1)
也需要将该图片以附件形式加入,其实只是换了一种显示方式- 本质上来讲还是利用html的特性
- 更多学习交流,可加小编微信号
learningBin
更多精彩,请关注微信公众号
扫描二维码,关注本公众号