オートフィルタ(平均より上・平均より下)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ソース 実行前
実行後
関連記事
-
-
文字列をセル幅で折り返す(WrapText プロパティ)
WrapText プロパティ WrapText プロパティは、セルに表示されてい …
-
-
非連続のセルが選択されているか確認する(Areas コレクション)
Areas コレクション の使い方 複数の離れた位置にあるセル範囲を選択した場合 …
-
-
セルを参照する(Range プロパティ)
Range プロパティ 任意のセルにアクセスするには Range プロパティを使 …
-
-
グラデーション(Pattern プロパティ・Gradient プロパティ)
セルの背景ににグラデーションを設定する Pattern プロパティを使用するとセ …
-
-
対象のセルを直接参照しているセル全てを取得(DirectDependents プロパティ)
DirectDependents プロパティ DirectDependents …
-
-
フリガナの取得(GetPhonetic メソッド)
GetPhonetic メソッド GetPhonetic メソッドは、指定した文 …
-
-
セルを参照する(Cells プロパティ)
Cells プロパティ Cells プロパティは、ワークシートの行番号と列番号を …
-
-
A1 形式と R1C1 形式を変換、相対参照と絶対参照を変換(ConvertFormula)
ConvertFormula メソッド 数式で参照しているアドレスの相対参照と絶 …
-
-
網かけ(パターン)の取得・設定(Pattern プロパティ)
網かけ(パターン)を取得・設定する セルの背景に網かけ(パターン)を設定したり、 …
-
-
任意のセルを含む行または列全体を参照(EntireRow プロパティ,EntireColumn プロパティ)
EntireRow プロパティ・EntireColumn プロパティ Entir …