outlook 的application对象ItemSend事件可以在发送邮件时触发。
当需要在邮件发送出去之前执行vba代码时,可以在application对象的ItemSend事件中写对应的代码。
比如要在发送邮件时,根据发送邮件的主题判断是否添加附件,可以使用如下的代码:
Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
Dim oMI As MailItem
Set oMI = Item
'如果发送的邮件的主题是test则执行添加附件的代码
If oMI.Subject = "test" Then
sText = oMI.Body
sFileName = Split(Split(sText, "附件$")(1), "$")(0)
oMI.Attachments.Add sFileName
End If
End Sub


发表评论