次の方法で共有


Search.Filter プロパティ (Outlook)

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

構文

Filter

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

注釈

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

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

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

次の Microsoft Visual Basic for Applications (VBA) の例では、新しい Search オブジェクトを作成します。 イベント サブルーチンは、検索が完了した後に起動し、検索の結果に加えて、Search オブジェクトの Tag プロパティと Filter プロパティを表示します。

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 イベント サブルーチンを使用して、Search オブジェクトに格納されているデータの整合性を確保します。

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 のサポートおよびフィードバックを参照してください。