如何从共享邮箱中的数百封邮件中删除私人标志?

如何从共享邮箱中的数百封邮件中删除私人标志?

我使用 Outlook 2010 x86 客户端和 Exchange 2013 服务器。在许多“共享邮箱“有些邮件带有“私人旗帜“无法在 Outlook 2010 中阅读此邮件。使用 MFCMAPI 编辑器可以清除此邮件吗?”私人旗帜“一封一封,但我有数百封邮件。邮件属性是PR_SENSITIVITYPidTagSensitivityptagSensitivity

我尝试编写一个 VBA 脚本,将敏感度设置为“私人的“ 到 ”普通的“,但是我在编写 VBA 脚本时遇到了很大的问题。

是否可以使用 VBA 脚本来实现,或者是否存在使用 Exchange Powershell 来实现此目的的现有方法?

答案1

感谢 CharlieRB 的快速评论。这是我的代码:

Sub ClearPrivateFlag()
    Dim ol As New Outlook.Application
    Dim ns As Outlook.NameSpace
    Dim fdMail As Outlook.MAPIFolder
    Dim objItem As Object
    Dim objAppt As MailItem
    Dim i, nCount As Integer

    Set ns = ol.GetNamespace("MAPI")
    'Reference the default Mail folder
    Set fdMail = ns.GetDefaultFolder(olFolderInbox)
    i = 1
    nCount = fdMail.Items.Count

    Do While i < nCount
      Set objItem = fdMail.Items(i)

      If objItem.Class = olMailItem Then
          Set objAppt = objItem
          If (objAppt.Sensitivity = olPrivate) Then
              objAppt.Sensitivity = olNormal
              MsgBox objAppt
          End If
      End If

      i = i + 1
      Set objItem = Nothing
      Set objAppt = Nothing
    Loop

    Set fdCalendar = Nothing
    Set ns = Nothing
    Set ol = Nothing
End Sub

相关内容