引用共享收件箱帐户



在共享收件箱帐户上,如果电子邮件未读,我想运行脚本。

我试过这个:

Sub UnreadMail()
 Dim myEmail As Object
 Dim myNamespace As Object
 Dim myFolder As Folder
 Set myNamespace = Application.GetNamespace("MAPI")
 Set myFolder = myNamespace.GetDefaultFolder(olFolderInbox)
For Each myEmail In myFolder
 If (myEmail.UnRead) Then
  Call SaveAttachToDisk
 End If
 Next
End Sub

你几乎明白了,尝试使用 GetSharedDefaultFolder 看看 MSDN GetSharedDefaultFolder 方法

Option Explicit
Sub UnreadMail()
    Dim olNameSpace As Outlook.NameSpace
    Dim olShareName As Outlook.Recipient
    Dim olShareInbox As Outlook.Folder
    Dim olItem As Outlook.MailItem
    Set olNameSpace = Application.GetNamespace("MAPI")
    Set olShareName = olNameSpace.CreateRecipient("Om3r@Email.com") 'address
    Set olShareInbox = olNameSpace.GetSharedDefaultFolder(olShareName, olFolderInbox) 'Inbox

    For Each olItem In olShareInbox.Items
        If (olItem.UnRead) Then
            'Call SaveAttachToDisk
            Debug.Print olItem '// Print UnRead Item to Immediate window
        End If
    Next
End Sub

最新更新