由于平时工作内容需要邮件发送,发送之前先使用excel编辑好,然后发送,这样发送邮件比较耗时,因此在网上找了相应代码,学习后进行简单改变,将Excel表的最后一行用邮件发送。
前提是要安装并登录outlook账号,使用的Microsoft Office,WPS没有试成功。另外文档格式需要修改为“.xlsm”且需要启用宏。
Excel的内容
代码如下:
Sub Mail()
Dim Mail As Outlook.Application
Set Mail = New Outlook.Application
Dim objMail As Outlook.MailItem
Set objMail = Mail.CreateItem(olMailItem)
Dim lastLine As String '定义变量
lastLine = ActiveSheet.Range("A" & Rows.Count).End(xlUp).Row '最后一行
With objMail
.Subject = Sheet1.Cells(lastLine, 1) '主题
.To = Sheet1.Cells(lastLine, 3) '收件人
.BodyFormat = olFormatHTML
.HTMLBody = Sheet1.Cells(lastLine, 2) '正文 .Attachments.Add "D:\RunLog.txt" '附件
.Send '执行发送
End With
End Sub