Search.Filter プロパティ (Outlook)

検索の範囲を指定したデータのサブセットに制限するために使用する DASL ステートメントを表す 文字列 値を返します。 読み取り専用

構文

expressionFilter

検索オブジェクトを表す変数。

注釈

このプロパティは、Application オブジェクトの AdvancedSearch メソッドで Filter 引数として設定されます。

テキスト フィールドを検索する場合は、アポストロフィ (') または二重引用符 () のいずれかを使用することができます ("")、フィルターの一部である値を区切るために。 たとえば、フィールドが String 型の場合、次のすべての行は正しく機能します。

sFilter = "[CompanyName] = 'Microsoft'"
sFilter = "[CompanyName] = ""Microsoft"""
sFilter = "[CompanyName] = " & Chr(34) & "Microsoft" & Chr(34)

次の Microsoft Visual Basic for Applications (VBA) の例では、新しい Search オブジェクトを作成します。 イベント・サブルーチンは検索が終了すると実行され、検索結果に加えて検索オブジェクトの「タグ」および「フィルタ」プロパティが表示されます。

Sub SearchInboxFolder() 
 
 'Searches the Inbox folder 
 
 Dim objSch As Outlook.Search 
 
 Const strF As String = _ 
 
 "urn:schemas:mailheader:subject = 'Office Holiday Party'" 
 
 Const strS As String = "Inbox" 
 
 Const strTag As String = "SubjectSearch" 
 
 Set objSch = _ 
 
 Application.AdvancedSearch(Scope:=strS, Filter:=strF, Tag:=strTag) 
 
End Sub

AdvancedSearchComplete イベント・サブルーチンを使用して、検索オブジェクトに保管されているデータの保全性を確保します。

Private Sub Application_AdvancedSearchComplete(ByVal SearchObject As Search) 
 
 Dim objRsts As Outlook.Results 
 
 Dim Item as Outlook.MailItem 
 
 MsgBox "The search " & SearchObject.Tag & "has finished. The filter used was " & _ 
 
 SearchObject.Filter & "." 
 
 Set objRsts = SearchObject.Results 
 
 'Print out number in results collection 
 
 MsgBox objRsts.Count 
 
 'Print out each member of results collection 
 
 For Each Item In objRsts 
 
 MsgBox Item 
 
 Next 
 
 
 
End Sub

関連項目

オブジェクトを検索します。

サポートとフィードバック

Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。