関数・メソッド

オートフィルターを使用する【AutoFilterメソッド】【ExcelVBA】

AutoFilterメソッド

Excelのオートフィルターを実行したいときは、AutoFilterメソッドを使用します。
指定した値を自動で絞り込む機能ですね。
手動では困難なループ処理や、データの一括操作ができるので高速処理が可能です。

構文
Object.AutoFilter (Field, Criteria1, Operator, Criteria2, SubField, VisibleDropDown)

ObjectRangeオブジェクトを表す変数です。
Fieldフィルターの対象となる列番号を指定します(左端が1)。
Criteria1抽出する条件です。
空白のフィールドを検索するには “=”、空白以外のフィールドを検索するには “<>”、
データ型のフィールドを選択するには “><“を指定します。
Operatorフィルターの種類を XlAutoFilterOperator の定数で指定します。
Criteria22番目の抽出条件となる文字列を指定します。
Criteria1 および Operator と組み合わせて使い、複合抽出条件が可能です。
SubField抽出条件を適用するデータ型のフィールドです。
省略すると、”(表示値)” が対象になります。
VisibleDropDownFalse を指定すると、オートフィルターのドロップダウン矢印を非表示にします。
既定値は True です。
XlAutoFilterOperator定数
xlAnd1Criteria1 と Criteria2 の論理 AND
xlBottom10Items4表示される最も小さい値の項目 (Criteria1 で指定された項目の数)
xlBottom10Percent6表示される最も小さい値の項目 (Criteria1 で指定された割合)
xlFilterCellColor8セルの色
xlFilterDynamic11動的フィルター
xlFilterFontColor9フォントの色
xlFilterIcon10フィルター アイコン
xlFilterValues7フィルターの値
xlOr2Criteria1 または Criteria2 の論理 OR
xlTop10Items3表示される最大値の項目 (Criteria1 で指定された項目の数)
xlTop10Percent5表示される最大値の項目 (Criteria1 で指定された割合)

サンプルコード

Public Sub Sample()
  'A1セル(タイトル)から始まる表の、1列目、「商品A」をフィルターにかける。
  Range("A1").AutoFilter Field:=1, Criteria1:="商品A", Operator:=xlFilterValues
 '「A」を含む文字列を絞り込む。
 Range("A1").AutoFilter Field:=1, Criteria1:="*A*", Operator:=xlFilterValues

  'オートフィルターを解除する
 Range("A1").AutoFilter
End Sub

 

注意点

  • 上記のように、ある特定の文字を含む文字列を絞り込む場合は「*」(アスタリスク)で囲む必要があります。
  • フィルターを解除するときは、引数を指定しません。

 

関連記事

コメント

タイトルとURLをコピーしました