其实很简单,直接看代码吧。
Public Sub VBASendMail()
Dim itmMail As Outlook.MailItem
Set itmMail = ThisOutlookSession.CreateItemFromTemplate("D://test.msg")
itmMail.To = "test@163.com"
itmMail.HTMLBody = Replace(itmMail.HTMLBody, "$username", "test")
itmMail.HTMLBody = Replace(itmMail.HTMLBody, "$password", "testpasswd")
itmMail.Send
Set itmMail = Nothing
End Sub
通过替换预先定义好的模板test.msg中的$username和$password 实现程序控制群发不同的username和password
一下午困惑在开始的时候插入的图片无法显示,后面使用了一个解决方法
在图片前定义了个变量$image1
然后代码里加一句
itmMail.HTMLBody = Replace(itmMail.HTMLBody, "$image11", "<img border=0 width=553 height=378 id=""图片_x0020_2"" src=""cid:image001.jpg@01C8496E.97729C00"" alt=1>")
其中,前面部分为附件中的文件名, @后面则是一个串,现在还没搞清楚怎么用程序查到这个值,不过可以在保存的邮件中直接查看源文件来得到。在一封邮件中这个值唯一。
