オートフィルタ(平均より上・平均より下)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ソース 実行前
実行後
関連記事
-
-
フリガナの設定(Characters プロパティ,PhoneticCharacters メソッド)
Characters プロパティ Characters プロパティは、文字範囲を …
-
-
オートフィルタの状況を確認(AutoFilterMode, FilterMode)
AutoFilterMode プロパティ AutoFilterMode プロパテ …
-
-
セルに値を設定する・セルの値を参照する(Value プロパティ)
Value プロパティ Value プロパティは、セルの値を取得したり、値を設定 …
-
-
入力規則(日本語入力)Validation オブジェクト,IMEMode プロパティ
IMEMode プロパティ Validation.IMEMode プロパティ を …
-
-
対象のセルが直接参照しているセル全てを取得(DirectPrecedents プロパティ)
DirectPrecedents プロパティ DirectPrecedents …
-
-
セルを参照する(Range プロパティ)
Range プロパティ 任意のセルにアクセスするには Range プロパティを使 …
-
-
次の検索(FindNext メソッド,FindPrevious メソッド)
FindNext メソッド Find メソッドで開始された検索を継続します。引数 …
-
-
配列数式を取得または設定する(FormulaArray プロパティ)
FormulaArray プロパティ FormulaArray プロパティは、対 …
-
-
罫線の設定(Borders プロパティ)
罫線の設定 罫線を一括(上下左右すべて)で設定するには、Borders プロパテ …
-
-
並べ替え(Sort メソッド)
Sort メソッド 任意のセル範囲内で、並べ替えを行います。引数で、並べ替えの条 …