
當 Outlook 連接到通用 IMAP 伺服器時,是否可以透過郵件 ID 進行搜尋?或者,有沒有辦法在下載的 .pst 檔案中搜尋訊息 ID?我對此進行了大量搜索,但沒有找到僅使用 Outlook 而不是 Exchange 來執行此操作的方法。
答案1
您有三個選擇:
僅在選定的資料夾中搜尋。自訂目前資料夾視圖或建立新資料夾視圖,按一下「過濾器」並轉到其設定中的「SQL」標籤。設定「直接編輯這些條件」檢查並輸入以下內容:
http://schemas.microsoft.com/mapi/proptag/0x1035001F = 'message-id-to-search'
這會將訊息清單限制為具有「要搜尋的訊息 ID」訊息 ID 的訊息。
高級搜尋。您需要為此建立一個 VBA 巨集。好消息是它只有兩個函數長。在 Outlook VBA 編輯器 ( ALT+ F11) 中,開啟 Project1 -> Microsoft Outlook Objects -> ThisOutlookSession 並建立至少兩個 Sub。像這些的東西:
Private Sub Application_AdvancedSearchComplete(ByVal SearchObject As Search) If SearchObject.Tag = "MessageId" Then Set Results = SearchObject.Results MsgBox "Message-ID search complete. " & Results.Count & " result(s) found." For i = 1 To Results.Count Results.Item(i).Display Next End If End Sub Public Sub SearchMessageId() Set Folder = Session.PickFolder If Not Folder Is Nothing Then r = MsgBox("Include subfolders?", vbYesNoCancel, "Search by Message-ID") If r <> vbCancel Then MessageId = InputBox("Message-ID:") If MessageId <> "" Then Application.AdvancedSearch "'" & Folder.FolderPath & "'", "http://schemas.microsoft.com/mapi/proptag/0x1035001F = '" & MessageId & "'", r = vbYes, "MessageId" End If End If End If End Sub
使用 Outlook 規則。我的意思是“郵件標題中包含特定單字”規則。停用它們並在需要時手動執行以複製找到的訊息或使用標誌和/或類別標記它們。不要忘記在每次運行之前編輯要搜尋的訊息 ID!