设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 1754|回复: 0
打印 上一主题 下一主题

巧用Excel发送电子邮件

[复制链接]
跳转到指定楼层
1#
发表于 2005-4-9 06:33:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
       一年之计在于春,在这春风拂面的季节里,笔者总要通过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中执行通过,并且对“通讯录”和“全自动发送邮件”宏代码稍作修改就可以完成任何形式的大量邮件的发送。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2025-1-23 17:50 , Processed in 0.089476 second(s), 25 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表