根据生成的电子邮件主题添加附件

时间:2016-02-19 09:42:06

标签: vba email outlook-vba

我有一个应用程序,它生成的电子邮件附有pdf发票。生成的电子邮件显示在Outlook中,因此您可以在发送之前手动编辑它们。

在所有发票上,我想添加额外的附件,并附上一种免责声明。我创建了一个宏和一个按钮来执行此操作。工作正常,但我希望在创建电子邮件时自动完成此操作。

我的问题:

  • 有人知道在编辑器中打开电子邮件后是否可以运行VBA Marco?
  • 我注意到有一个ItemLoad事件但是当它被删除时,还没有分配任何值,所以我无法检查主题是否是附有发票的电子邮件。

1 个答案:

答案 0 :(得分:0)

在ThisOutlookSession

Private WithEvents InspGenSubj As Outlook.Inspectors

Private Sub Application_Startup()
    Set InspGenSubj = Inspectors
End Sub

Private Sub InspGenSubj_NewInspector(ByVal Inspector As Inspector)

    Dim curritem As Object

    Set curritem = Inspector.currentItem

    If curritem.Class = olMail Then
        If curritem.Sent = False Then
            If curritem.Subject = "Generated Mail subject" Then
                MsgBox "Code to add attachment to " & curritem.Subject
            End If
        End If
    End If
End Sub

在不知道邮件是如何生成的情况下,我将未发送的邮件保存到草稿中,关闭然后重新打开。