5.5.11-模块解析:L3_邮件发送¶
本模块的作用是将生成的Excel以附件形式发送,包括2个过程。采用以下方法自动发送邮件,要求必须先安装好Outlook客户端,且先登录邮箱账户。
预警邮件如图5-20所示
代码如下
1 Sub S03_预警邮件发送()
2 currentPath = ThisWorkbook.Path
3 Set fso = CreateObject("Scripting.FileSystemObject")
4 Set currentFolder = fso.GetFolder(currentPath)
5
6 ' 获取上一级文件夹地址
7 Set upperFolder = currentFolder.parentFolder
8 outputAddress = upperFolder & "\【2】输出"
9
10 For Each fileObject In fso.GetFolder(outputAddress).Files
11 eachFileName = fileObject.Name
12 attachmentAddress = outputAddress & "\" & eachFileName
13 Debug.Print (eachFileName)
14 Call sub_send_email(attachmentAddress)
15 Next
16 End Sub
17 Sub sub_send_email(attachmentAddress)
18 Set outlookApp = CreateObject("Outlook.Application")
19 Set mail = outlookApp.CreateItem(0)
20 emailReceiver = "zhangbin198904@163.com"
21 eSubject = "预警邮件"
22 eContent = "详细信息请查看附件"
23
24 mail.To = emailReceiver
25 mail.Subject = eSubject
26 mail.Body = eContent
27 mail.Attachments.Add (attachmentAddress)
28 mail.Send
29
30 Set outlookApp = Nothing
31 Set mail = Nothing
32 End Sub
关键代码解读
1)第24行:mail.To = emailReceiver。收件人邮箱
2)第25行:mail.Subject = eSubject。邮件主题
3)第26行:mail.Body = eContent。邮件正文
4)第27行:mail.Attachments.Add (attachmentAddress)。增加附件

