方法: プログラムによって特定のフォルダー内を検索する
このコード例では、Find メソッドと FindNext メソッドを使用して、[受信トレイ] 内にある電子メール メッセージの件名フィールドのテキストを検索します。このメソッドは、文字列フィルターを使用して、Subject テキストの最初の文字が T の件名を検索します。
対象: このトピックの情報は、Outlook 2013 と Outlook 2010 のアプリケーション レベルのプロジェクトに適用されます。詳細については、「Office アプリケーションおよびプロジェクト タイプ別の使用可能な機能」を参照してください。
使用例
Private Sub SearchInBox()
Dim inbox As Outlook.MAPIFolder = Me.Application.ActiveExplorer().Session. _
GetDefaultFolder(Outlook.OlDefaultFolders.olFolderInbox)
Dim items As Outlook.Items = inbox.Items
Dim mailItem As Outlook.MailItem = Nothing
Dim folderItem As Object
Dim subjectName As String = String.Empty
Dim filter As String = "[Subject] > 's' And [Subject] <'u'"
folderItem = items.Find(filter)
While (folderItem IsNot Nothing)
mailItem = TryCast(folderItem, Outlook.MailItem)
If mailItem IsNot Nothing Then
subjectName = vbCrLf & mailItem.Subject
End If
folderItem = items.FindNext()
End While
subjectName = "The following e-mail messages were found: " _
& subjectName
MsgBox(subjectName)
End Sub
private void SearchInBox()
{
Outlook.MAPIFolder inbox = this.Application.ActiveExplorer().Session.
GetDefaultFolder(Outlook.OlDefaultFolders.olFolderInbox);
Outlook.Items items = inbox.Items;
Outlook.MailItem mailItem = null;
object folderItem;
string subjectName = string.Empty;
string filter = "[Subject] > 's' And [Subject] <'u'";
folderItem = items.Find(filter);
while (folderItem != null)
{
mailItem = folderItem as Outlook.MailItem;
if (mailItem != null)
{
subjectName += "\n" + mailItem.Subject;
}
folderItem = items.FindNext();
}
subjectName = " The following e-mail messages were found: " +
subjectName;
MessageBox.Show(subjectName);
}
参照
処理手順
方法: プログラムによって名前を指定してフォルダーを取得する