朋友們早上好,
我需要您的幫助,我有兩個問題:
1.--我希望能夠提取PDF檔案,但從特定的聯系人(發件人)那里得到的電子郵件卻沒有。
1.- 我希望能夠提取PDF檔案,但要從特定的聯系人(發件人)的電子郵件中提取
。
2.- 我有幾個收件箱,我怎樣才能設定另一個收件箱,而不是默認的那個--在這里我嘗試了以下方法:"Set Inbox = olNs.GetDefaultFolder ([email protected])" 但它對我不起作用
非常感謝您的到來Option Explicit
Public Sub Example()。
'//宣告你的變數。
Dim olNs As Outlook.NameSpace
Dim Inbox As Outlook.MAPIFolder
Dim Items As Outlook.Items
Dim Item As Outlook.MailItem
Dim Atmt As Attachment
Dim Filter As String
Dim FilePath As String
Dim AtmtName As String
Dim i As Long
Dim objOwner As Outlook.Recipient
'//設定收件箱參考
Set olNs = Application.GetNamespace("MAPI" )
Set objOwner = olNs.CreateRecipient("[email protected]")
Set Inbox = olNs.GetSharedDefaultFolder(objOwner)
FilePath = "C:UsersUnityDesktopadjuntos"/span>
過濾器 = "[未讀] = True"。
Set Items = Inbox.Items.Restrict(Filter)
'//Loop through backwards
For i = Items.Count To 1 Step -1
Set Item = Items(i)
觸發事件(DoEvents)
If Item.Class = olMail Then
If Item.SenderEmailAddress = "[email protected]"/span> Then
For Each Atmt In Item.Attachments
AtmtName = FilePath & Atmt.FileName
If ((InStr(Atmt.DisplayName, ".jpg") Or InStr(Atmt.DisplayName, " 。 zip") Or InStr(Atmt.DisplayName, ".PDF") Or InStr(Atmt.DisplayName, ".pdf") )) 然后
Atmt.SaveAsFile FilePath & ""/span> & Atmt.DisplayName
End If
False 專案.UnRead = False
接下來
End If
End If
下一步 下一步
Set Inbox = Nothing
Set Items = Nothing[/span]。
Set Item = Nothing
Set Atmt = Nothing[/span]。
Set olNs = Nothing[/span]。
End Sub
uj5u.com熱心網友回復:
- 似乎另外你需要檢查專案的發件人的電子郵件地址。MailItem.SenderEmailAddress 屬性回傳一個字串,代表Outlook專案發件人的電子郵件地址。
Sub SetFlagIcon()
Dim mpfInbox As Outlook.Folder
Dim obj As Outlook.MailItem
Dim i As Integer
Set mpfInbox = Application.GetNamespace("MAPI").GetDefaultFolder(olFolderInbox) .Folders("Test")
' 回圈InboxTest檔案夾的所有專案。
For i = 1 To mpfInbox.Items.Count
If mpfInbox.Items(i).Class = olMail Then
Set obj = mpfInbox.Items.Item(i)
If obj.SenderEmailAddress = "[email protected]"/span> Then
'設定黃色旗幟圖示
obj.FlagIcon = olYellowFlagIcon
obj.Save
End If
End If
下一步 下一步
End Sub
然而,對檔案夾中的所有專案進行迭代并不是一個真正的好主意。請使用Find/FindNext或Restrict類中的Items方法。在以下文章中閱讀更多關于這些方法的內容:
如何:使用 Find 和 FindNext 方法從檔案夾中檢索 Outlook 郵件專案(C#,VB.NET)
AdvancedSearch方法來幫助你。請參閱Outlook中的高級搜索程式化。C#、VB.NET以獲得更多資訊。- 使用Store.GetDefaultFolder方法代替。它回傳一個
Folder物件,該物件代表商店中的默認檔案夾,其型別由FolderType引數指定。這個方法類似于NameSpace物件的GetDefaultFolder方法。不同的是,該方法獲得與帳戶相關聯的交付商店的默認檔案夾,而NameSpace.GetDefaultFolder回傳當前組態檔的默認商店的默認檔案夾。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/332373.html
標籤:
