オートフィルタ(平均より上・平均より下)AutoFilter メソッド
平均値よりも大きい(小さい)値のレコードを抽出
AutoFilter メソッドで、引数 operator に、xlFilterDynamic を指定し、引数 criteria1 に、xlFilterAboveAverage を指定すると平均値よりも大きい値を抽出、引数 operator に、xlFilterDynamic を指定し、引数 criteria1 に、xlFilterBelowAverage を指定すると平均値よりも小さい値を抽出することができます(Excel 2007 以降のバージョン)。
object.AutoFilter ( [ field, criteria1, operator ] )
引数・戻り値
- object ・・・ 対象となる Range オブジェクトを指定します。
- field ・・・ フィルターの対象となるフィールド番号を整数で指定します。対象となる範囲の最も左側の列(フィールド)が、フィールド番号 1 になります。
複数の列(フィールド)をまとめて扱いたい場合は、配列を指定することも可能です。
(例)field := Array(1,3,6) - criteria1 ・・・ 平均を上回る値を抽出したい場合は、xlFilterAboveAverage を指定します。平均未満の値を抽出したい場合は、xlFilterBelowAverage を指定します。
- operator ・・・ xlFilterDynamic を指定します。
AutoFilter メソッド の引数の詳細については、オートフィルタ(AutoFilter メソッド) を参照してください。
平均より上の値を抽出する例
サンプルVBAソース 1
1 2 3 4 5 6 7 8 9 10 |
Sub Sample09_1_AutoFilter() '全教科すべて平均点より上 Range("B3").AutoFilter Field:=Array(3, 4, 5, 6, 7), _ criteria1:=xlFilterAboveAverage, _ Operator:=xlFilterDynamic End Sub |
実行結果
サンプルVBAソース 実行前
実行後
平均より下の値を抽出する例
サンプルVBAソース 2
1 2 3 4 5 6 7 8 9 10 |
Sub Sample09_2_AutoFilter() '合計点が平均未満 Range("B3").AutoFilter Field:=8, _ criteria1:=xlFilterBelowAverage, _ Operator:=xlFilterDynamic End Sub |
実行結果
サンプルVBAソース 実行前
実行後
関連記事
-
-
入力規則(日本語入力)Validation オブジェクト,IMEMode プロパティ
IMEMode プロパティ Validation.IMEMode プロパティ を …
-
-
セル幅・高さの既定値(StandardHeight プロパティ・StandardWidth プロパティ)
StandardHeight プロパティ・StandardWidth プロパティ …
-
-
AutoFilter オブジェクト(メソッド・プロパティ)
AutoFilter.ShowAllData メソッド AutoFilter.S …
-
-
対象のセルを直接参照しているセル全てを取得(DirectDependents プロパティ)
DirectDependents プロパティ DirectDependents …
-
-
セルのアドレスを確認(Address プロパティ)
Address プロパティ Address プロパティ・AddressLocal …
-
-
セル・セル範囲を貼り付ける(Paste メソッド)
Paste メソッド Paste メソッドは、クリップボードの内容を指定したセル …
-
-
入力規則(他セルや数式を利用して許容値を設定)Validation オブジェクト
他のセルや数式を利用して許容値を設定する 入力規則(その5) での設定を、マクロ …
-
-
セルの行番号または列番号を取得(Row プロパティ,Column プロパティ)
Row プロパティ・Column プロパティ Row プロパティは、指定したセル …
-
-
ハイパーリンク(Hyperlink オブジェクト)
Hyperlink オブジェクト Hyperlinks コレクション のメンバー …
-
-
引数に指定したセル範囲の共通のセル範囲を取得(Intersect メソッド)
Intersect メソッド Intersect メソッドは、引数に指定したセル …