Access に、個々のメール アドレスから送信されたユーザーの受信トレイ内のすべてのメールを取得するコードがあります。このコード (以下の簡略化) は正常に動作します。
Dim outItems as Outlook.Items
Dim strEMAddress as string
Dim outFolder as Outlook.MAPIFolder
Set outFolder = outNS.GetDefaultFolder(olFolderInbox)
Set outItems = outFolder.Items
str="my@email.com"
Set outItems = outItems.Restrict("[SenderEmailAddress] = " & "'" & strEMAddress & "'")
SentMails フォルダーでも同様に機能するものを探しており、アイテムを特定の電子メール アドレスに送信されたものに制限しています。
.Recipients がコレクションであるという事実によってこれが複雑になることはわかっています (アイテムには複数の受信者がいる可能性があるため)。送信済みフィールドのいずれかで探している電子メールアドレスを含むアイテムのリストを返す方法があることを願っています (To/CC/bcc - ただし、これが簡単であれば To だけで十分です)。
オンラインで検索したところ、 .To はダメです (メールアドレスではありません) が見つかりました。次のような疑似コードを取得できません。
Set outItems = outItems.Restrict("[Recipients] = " & "'" & strEMAddress & "'")