|
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件 ★ 免费下载 ★ ★ 使用帮助★
- Sub 批量发送邮件()
- '要能正确发送并需要对Microseft Outlook进行有效配置
- On Error Resume Next
- Dim rowCount, endRowNo
- '要正常运行下面这句,要将工具/引用中的Microseft Outlook *.0 Object Library(其中*为你Microseft Outlook的版本号)选上
- 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, 1)
-
- '设置邮件抄送人
-
- .CC = Cells(rowCount, 2)
- '设置邮件主题
- .Subject = Cells(rowCount, 3)
- '设置邮件内容(从通讯录表的'内容'字段中获得)
- .Body = Cells(rowCount, 4)
-
- '设置重要性为高
-
- .Importance = 2
- '设置附件(从通讯录表的'附件'字段中获得)(第5列为docx表格附件)
-
- .Attachments.Add "E:\Users\admin\Desktop\测试邮件批量发送" & Cells(rowCount, 5) & ".docx"
-
- '设置附件(从通讯录表的'附件'字段中获得)(第6列为doc表格附件)
- .Attachments.Add "E:\Users\admin\Desktop\测试邮件批量发送" & Cells(rowCount, 6) & ".doc"
-
- '设置附件(从通讯录表的'附件'字段中获得)(第7列为xlsx表格附件)
- .Attachments.Add "E:\Users\admin\Desktop\测试邮件批量发送" & Cells(rowCount, 7) & ".xlsx"
-
- '设置附件(从通讯录表的'附件'字段中获得)(第8列为xls表格附件)
- .Attachments.Add "E:\Users\admin\Desktop\测试邮件批量发送" & Cells(rowCount, 8) & ".xls"
- '自动发送邮件
- .Send
- End With
- '销毁objMail对象
- Set objMail = Nothing
- Next
- '销毁objOutlook对象
- Set objOutlook = Nothing
- '所有电子邮件发送完成时提示
- MsgBox rowCount - 2 & "封邮件发送成功!"
- '
- If Application.Workbooks.Count = 1 Then
- Application.Quit
- Else
- Workbooks("自动发送邮件.xls").Close
- End If
- '
- End Sub
复制代码 各位大神,这个代码Excel发完邮件,就自动关闭了,是什么原因?还有发送附件的那里的代码能给改成啥格式的都行么?因为如果格式不一样,每次还得再改,有点麻烦。
|
|