|
如果和excel 与out look 相连接,那就更快哦 可以参考下面的代码
Sub Button4_Click()
Application.DisplayAlerts = False
On Error Resume Next
Dim rowCount, endRowNo
Dim objOutlook As Outlook.Application '要能正确发送并需要对Microseft Outlook进行有效配置
Dim objMail As MailItem
Dim str1 As String
' endRowNo = Cells(4, 1).CurrentRegion.Rows.Count
endRowNo = Cells(1).SpecialCells(xlCellTypeLastCell).Row '取得当前工作表与Cells(1,1)相连的数据区行数
Set objOutlook = New Outlook.Application '创建objOutlook为Outlook应用程序对象
For rowCount = 6 To endRowNo + 1 '开始循环发送电子邮件,比如从第6行开始,第1行是标题
str1 = Cells(rowCount, 7)
Set objMail = objOutlook.CreateItem(olMailItem) '创建objMail为一个邮件对象
With objMail
.To = Cells(rowCount, 4) '设置收件人地址(比如从 Excel 表的第4列“E-mail地址”字段中获得) '"c:\\users.ctl"
.Subject = Cells(rowCount, 5) '设置邮件主题(比如从 Excel 表的第5列“邮件主题”字段中获得)
.Body = Cells(rowCount, 6) '设置邮件内容(比如从 Excel 表的第6列“邮件内容”字段中获得)
.Attachments.Add str1 '设置附件(比如从 Excel 表的第7列“附件”字段中获得)
.Send
End With
Set objMail = Nothing '销毁objMail对象
Next
Set objOutlook = Nothing '销毁objOutlook对象
MsgBox rowCount - 3 & "邮件发送成功!"
Application.DisplayAlerts = True
End Sub
|
|