[Excal VBA] オートフィルターを使ってリストにフィルターをかけます。 – Range.AutoFilter メソッド-
公開日:
:
最終更新日:2015/07/29
カテゴリ: 03-5_ExcelVBA_メモ・小技集
タグ: Excel VBA, Range オブジェクト, Range.AutoFilter メソッド, メソッド
動作確認環境
Windows7
Excel: 2007, 2013
説明
オートフィルターを使ってリストにフィルターをかけます。
構文
式.AutoFilter(Field, Criteria1, Operator, Criteria2, VisibleDropDown)
Field: 省略可能 バリアント型 (Variant)
フィルターの対象となるテーブルを指定します。
左側にある項目が”1″。
Criteria1: 省略可能 バリアント型 (Variant)
抽出条件となる文字列を指定します。
“=” と指定すると、空白セルが抽出。
“<>” と指定すると空白以外のフィールドが抽出。
省略すると、抽出条件は All。
引数 Operator に xlTop10Items が指定されている場合は、引数 Criteria1 に項目数を指定。
Operator: 省略可能 XlAutoFilterOperator
フィルターの種類を XlAutoFilterOperator クラスの定数のいずれかで指定します。
[XlAutoFilterOperator]
xlAnd, 抽出条件 1 と抽出条件 2 の論理演算子 AND
xlBottom10Items, 表示される最低値項目 (抽出条件 1 で指定される項目数)
xlBottom10Percent, 表示される最低値項目 (抽出条件 1 で指定される割合)
xlFilterCellColor, セルの色
xlFilterDynamic, 動的フィルター
xlFilterFontColor, フォントの色
xlFilterIcon, フィルター アイコン
xlFilterValues, フィルターの値
xlOr, 抽出条件 1 または抽出条件 2 の論理演算子 OR
xlTop10Items, 表示される最高値項目 (抽出条件 1 で指定される項目数)
xlTop10Percent, 表示される最高値項目 (抽出条件 1 で指定される割合)
Criteria2: 省略可能 バリアント型 (Variant)
2 番目の抽出条件となる文字列を指定します。
VisibleDropDown: 省略可能 バリアント型 (Variant)
True; ドロップダウン矢印を表示します。
False; ドロップダウン矢印を非表示にします。
サンプルコード1
例1 赤ペンでソート
1 2 3 4 5 6 7 8 |
Sub 例1_オートフィルタ_基本() '********************************************************************* '式.AutoFilter(Field, Criteria1, Operator, Criteria2, VisibleDropDown) 'ここでは、Operator, Criteria2, VisibleDropDownは省略 '********************************************************************* Range("B2", "F13").AutoFilter Field:=2, Criteria1:="赤ペン" End Sub |
例2 “赤”で始まるセルをソート “*”(アスタリスク)を使用
1 2 3 4 5 6 7 8 |
Sub 例2_オートフィルタ_任意の文字をを含む() '********************************************************************* '式.AutoFilter(Field, Criteria1, Operator, Criteria2, VisibleDropDown) '"赤"を含むセルを検索 '********************************************************************* Range("B2", "F13").AutoFilter Field:=2, Criteria1:="赤*" End Sub |
例3 同じ列で複数条件でフィルタ ここでは”赤ペン”または”黒ペン”と一致するセル
1 2 3 4 5 6 7 8 |
Sub 例3_オートフィルタ_同じ列で複数条件でフィルタ() '********************************************************************* '式.AutoFilter(Field, Criteria1, Operator, Criteria2, VisibleDropDown) '赤ペンまたは黒ペンと一致するセルを検索 '********************************************************************* Range("B2", "F13").AutoFilter Field:=2, Criteria1:="赤ペン", Operator:=xlOr, Criteria2:="黒ペン", VisibleDropDown:=True End Sub |
例4 複数のセルで、各々の条件でソート
1 2 3 4 5 6 7 8 9 |
Sub 例4_オートフィルタ_異なる列で複数条件でフィルタ() '********************************************************************* '式.AutoFilter(Field, Criteria1, Operator, Criteria2, VisibleDropDown) '2列目で"赤ペン"、4列目で"1001"と一致するセルを検索 '********************************************************************* Range("B2", "F13").AutoFilter Field:=2, Criteria1:="赤ペン" Range("B2", "F13").AutoFilter Field:=4, Criteria1:="1001" End Sub |
広告
関連記事
-
-
[Excel VBA] 任意のセルが、指定したセル範囲にあるか調べる(Application.Intersect メソッド
動作確認環境 Windows7 Excel: 2007 構文 式: Appl
-
-
[Excel VBA] ワークシートの変更を検知する (Worksheet.Change イベント)
動作確認環境 Windows7 Excel: 2007 構文 式:Workshee
-
-
[Excal VBA] セルやセル範囲を選択する – Range.Select メソッド-
動作確認環境 Windows7 Excel: 2007 説明 セルやセル範囲を選択します
-
-
[Excel VBA] 改ページプレビュー、ノーマルビュー(標準)、ページレイアウト表示を切り替える -Window.Viewプロパティ-
動作確認環境 Windows7 Excel: 2007、2013 説明 ウィンドウに表示
-
-
[Excal VBA] セルを挿入する。 – Range.Insert メソッド-
動作確認環境 Windows7 Excel: 2007, 2013 説明 指定された範囲
-
-
[Excel VBA] メッセージボックスを使う
動作確認環境 Windows10 Excel: 2016 説明 メッセージボックスを使う
-
-
[Excel VBA] セルの検索(Range.Findメソッド)
動作確認環境 Windows7 Excel: 2007 構文 ・検索範囲の
-
-
[Excal VBA] セルに値を入れる – Range.Value プロパティ-
動作確認環境 Windows7 Excel: 2007 説明 セルに値をいれます。
-
-
実行中のマクロを中断する – Excel VBA
動作確認環境 Windows7 Excel: 2007 手順 Ctrl + Pause
-
-
動的配列と固定配列 – Excel VBA
動作確認環境 Windows7 Excel: 2007 構文 N/A サンプルコー