用Excel发送电子邮件
一年之计在于春,在这春风拂面的季节里,笔者总要通过E-mail为亲友送去一份祝福。以往笔者都是使用Excel自动给所有亲友发送电子邮件,这种方法不仅方便快捷,而且这些邮件的收件人、主题、内容、附件都不相同。
一、建立亲友通讯录
如图所示,在工作表中建立一个包含不同收件人、主题、内容和附件的亲友通讯录。
二、使用宏实现自动发送电子邮件
打开“工具→宏→Visual Basic编辑器”,单击“插入→模块”插入一个模块,在“工程”窗口中双击插入的模块,打开它的代码窗口,并输入以下宏:
Sub 全自动发送邮件()
"要能正确发送并需要对Microseft outlook进行有效配置
On Error Resume Next
Dim rowCount, endRowNo
Dim objOutlook As New outlook.Application
Dim objMail As MailItem
"取得当前工作表与Cells(1,1)相连的数据区行数
endRowNo = Cells(1, 1).CurrentRegion.Rows.Count
"创建objOutlook为outlook应用程序对象
Set objOutlook = New outlook.Application
"开始循环发送电子邮件
For rowCount = 2 To endRowNo
"创建objMail为一个邮件对象
Set objMail = objoutlook.CreateItem(olMailItem)
With objMail
"设置收件人地址(从通讯录表的“E-mail地址”字段中获得)
.To = Cells(rowCount, 2)
"设置邮件主题
.Subject ="新年好![来自朋友弗人的问候] "
"设置邮件内容(从通讯录表的“内容”字段中获得)
.Body = Cells(rowCount, 3)
"设置附件(从通讯录表的“附件”字段中获得)
.Attachments.Add Cells(rowCount, 4)
"自动发送邮件
.Send
End With
"销毁objMail对象
Set objMail = Nothing
Next
"销毁objoutlook对象
Set objoutlook = Nothing
"所有电子邮件发送完成时提示
MsgBox rowCount-1 & "个朋友的问候信发送成功!"
End Sub
以上代码在Excel 2000中执行通过,并且对“通讯录”和“全自动发送邮件”宏代码稍作修改就可以完成任何形式的大量邮件的发送。