首页 > 解决方案 > 如何在从 Excel 发送之前在 Outlook 中对电子邮件进行分类

问题描述

我在 Excel 中有一个宏,可以通过 Outlook 发送电子邮件,它运行良好。但在我的公司,他们最近添加了一个电子邮件分类。我可以插入我的代码吗?

示例:如果一次发送 2.000 封电子邮件,我必须在任何分类按钮上单击 2.000 次。

语言为葡萄牙语(巴西),因此按顺序为:机密、保留、内部、公共。

分类:

分类示例

    Sub ContatoAtivo()

    Application.ScreenUpdating = False
    Application.DisplayAlerts = False

    Dim OutlookApp As Object
    Dim OutlookMail As Object
    Dim xTexto As String
    Dim Texto As String
    Dim X, Y, Z As Integer
    Dim Email As String
    Dim Assunto As String
    Dim Qtd As Integer
    Dim rng As Range

    Qtd = Planilha2.ListObjects(1).DataBodyRange.Rows.Count

    For X = 1 To 1
        Email = Planilha2.Cells(X + 6, 8).Value
        Subject = Planilha3.Cells(11, 1).Value

        If Email <> "" Then

            Set rng = Nothing
            Set rng = Planilha3.Range("E12:F22").SpecialCells(xlCellTypeVisible)

            Set OutlookApp = CreateObject("Outlook.Application")
            Set OutlookMail = OutlookApp.CreateItem(0)

            Text = "Test"

            With OutlookMail
                .To = "test.test@test.com.br"
                .CC = ""
                .BCC = ""
                .Subject = Planilha3.Range("A5").Value & " | " & Subject
                .HTMLBody = Text
                '.Display
                .Send

            End With

            Set OutlookMail = Nothing
            Set OutlookApp = Nothing

            Texto = ""

        End If

    Next X

    Application.DisplayAlerts = True
    Application.ScreenUpdating = True
End Sub

谢谢!

标签: excelvbaoutlook

解决方案


这些控件属于 Azure 信息保护加载项。不幸的是,Office(也不是 VBA 或 VSTO)没有提供任何用于自定义自定义 UI 或处理它的简单方法。下面列出了您的选项:

  1. 尝试使用执行由参数标识的控件的CommandBars.ExecuteMso方法。idMso您必须找到需要以编程方式启动的控件的 ID。
  2. 通过单击 UI 中的相应按钮来询问或查找正在运行的命令。请注意,您可以为此使用延迟投标技术。因此,您可以从 VBA 调用该方法。在演练:从 VBA文章中调用 VSTO 外接程序中的代码中了解更多信息。
  3. 使用Microsoft Active Accessibility API。Microsoft Active Accessibility 是一种基于组件对象模型 (COM) 的技术,可改进辅助功能与 Microsoft Windows 上运行的应用程序的工作方式。它提供了集成到操作系统中的动态链接库以及一个 COM 接口和 API 元素,这些元素提供了可靠的方法来公开有关 UI 元素的信息。

无论如何,我建议联系 AIP 插件开发人员。


推荐阅读