vba - 如何将操作应用于选定的多个 Outlook 项目?

标签 vba outlook

代码here仅适用于一件元素。如何修改它以针对每个选定项目运行 DisplayItemMetadata(请参阅代码)?

更新。尝试执行以下操作:

For Each individualItem In Application.ActiveExplorer.Selection
    With objButton
        .BeginGroup = True
        .Caption = "My &item"
        .FaceId = 1000
        .Tag = "DisplayItemMetadata"
        If Not IsNull(Selection.Item(1)) Then
            On Error GoTo 0
            ' Just in case the item selected
            ' doesn't have a valid EntryID.
            ' .Parameter = Selection.Item(1).EntryID
            .Parameter = individualItem.EntryID
            On Error GoTo ErrRoutine
        End If
        .OnAction = _
            "Project1.ThisOutlookSession.DisplayItemMetadata"
    End With

Next individualItem

最佳答案

您需要迭代 Selection 对象,如下所示:

Dim individualItem As Object
For Each individualItem In Application.ActiveExplorer.Selection
    'Perform some action on individualItem
Next Message

如果您有一个对单个选定项目执行操作的函数,那么您应该更改该函数以接受参数(要对其执行操作的项目),然后在上述循环内调用该函数。

关于vba - 如何将操作应用于选定的多个 Outlook 项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6385876/

相关文章:

security - Excel VBA 代码的密码保护如何工作?

尝试获取 InnerText 时需要 VBA 对象错误

html - 如何为 ms-outlook ://compose body parameter for Outlook for iOS 配置 HTML 正文

laravel - 无法使用 office365 设置发送 SMTP 邮件

C# Outlook 插件窗体区域

performance - VBA 剪贴板快速读取

vba - 执行内部循环 - 错误 'Type Mismatch'

excel - MS Excel VBA : Find cells that have a specific formula type

html - 电子邮件表格宽度在 Outlook 中中断

c# - 在 Outlook 365 中创建电子邮件草稿,然后将其打开进行编辑