如何使用宏在Outlook中发送邮件之前检查详细信息?

时间:2015-03-25 16:06:10

标签: vba outlook-vba

我必须将邮件发送到许多不同的群组,有时我会发送给错误的群组。

我想创建要检查的VBA代码,主题标题的最初两个字母以及邮件正文中是否存在相同的两个首字母,因为我发送邮件。如果升级正确,则应发送邮件,否则代码应显示一些错误消息。

1 个答案:

答案 0 :(得分:1)

看起来您需要处理Application类的ItemSend事件,该事件在用户通过Inspector发送Microsoft Outlook项目时触发(在检查器关闭之前,但在用户之后)单击“发送”按钮)或在程序中使用Outlook项目的Send方法(如MailItem)时。请注意,传递给事件处理程序的Cancel参数允许取消操作。如果事件过程将此参数设置为true,则不会完成发送操作,并且检查器将保持打开状态。

Public WithEvents myOlApp As Outlook.Application  
Public Sub Initialize_handler()    
   Set myOlApp = Outlook.Application  
End Sub 

Private Sub myOlApp_ItemSend(ByVal Item As Object, Cancel As Boolean)  
  Dim prompt As String  
  prompt = "Are you sure you want to send " & Item.Subject & "?"  
  If MsgBox(prompt, vbYesNo + vbQuestion, "Sample") = vbNo Then  
    Cancel = True  
  End If  
End Sub

在代码中,您可以查看您需要的任何内容 - Subject,正文或HTMLBody值。