特法客户要求的格式主要为中金所和监控中心格式,导出数据之后可以进行自动生成,这部分内容比较简单,用for循环和fso对象就能够全部实现,这里不再赘述,主要是针对特法数据的邮件自动发送,直接上代码:
Dim outmail As MailItem
Dim i, m, n, j As Integer
Dim emailto, emailfrom, emailsubject, emailbody, emaiattachment, mydate As String
m = Sheets(1).Range("a65536").End(xlUp).Row
n = 0
For i = j To m
Set outapp = New Outlook.Application
Set outmail = outapp.CreateItem(olMailItem)
emailto = Sheets(1).Range("a" & i).Value
emaisubject = Sheets(1).Range("b" & i).Value
emailbody = "您好:" & vbCrLf & "附件为结算文件,请查收。"
' emailbody = "关于今日数据的说明:请以第二次发送的数据为准,给您带来不便我们深表歉意。"
emailattachment = Sheets(1).Range("c" & i).Value
With outmail
.To = emailto
.Subject = emaisubject
.body = emailbody
.attachments.Add emailattachment
End With
outmail.Send
n = n + 1
Call delay(5)
Next
Set outmail = Nothing
Set outapp = Nothing
MsgBox "发送成功,共计发送 " & n & " 封邮件"
ThisWorkbook.Save
Call delete_folder
End Sub
Sub delay(T As Single)
Dim time1, time2 As Single
time1 = Timer
Do
DoEvents
time2 = Timer - time1
Loop While time2 < T
End Sub