Filter


構文

Filter(sourcearray,match[,include[,compare]])

引数sourcearrayには、検索先の配列を指定します。

引数matchには、検索する文字列を指定します。

引数includeは省略可能です。引数matchが含まれる要素をフィルタリングする場合はTrueを指定します。

引数compareは省略可能です。文字列を比較するモードを指定します。

解説

引数includeにTrueを指定すると、指定した配列の要素から、任意の文字列を含む要素だけからなる配列を返します。引数includeにFalseを指定すると、任意の文字列を含まない要素だけからなる配列を返します。

引数compareには次の定数を指定できます。

数値 内容
0 テキストモードで比較します。大文字と小文字の区別をしません
1 バイナリモードで比較をします
2 Microsoft Accessでのみ使用できます

サンプル

次の例は、東京と横浜の住所が混在している配列を、東京だけの配列と横浜だけの配列にフィルタリングします。

Sub Sample()
    Dim myAddress(4) As String
    Dim Tokyo As Variant, Yokohama As Variant
    myAddress(0) = "東京都品川区"
    myAddress(1) = "横浜市保土ヶ谷区"
    myAddress(2) = "東京都世田谷区"
    myAddress(3) = "横浜市港北区"
    myAddress(4) = "東京都港区"
    Tokyo = Filter(myAddress, "東京都", True)
    Yokohama = Filter(myAddress, "横浜市", True)
End Sub