オートフィルタ(日付フィルタ)AutoFilter メソッド
日付フィルタを使用してレコードを抽出する
Excel 2007 から「日付フィルタ」という機能が追加されました。これをマクロで行うには、AutoFilter メソッドで、引数 operator に、xlFilterDynamic を指定し、引数 criteria1 に、XlDynamicFilterCriteria 列挙型 の定数を指定します(Excel 2007 以降のバージョン)。
object.AutoFilter ( [ field, criteria1, operator ] )
引数・戻り値
- object ・・・ 対象となる Range オブジェクトを指定します。
- field ・・・ フィルターの対象となるフィールド番号を整数で指定します。対象となる範囲の最も左側の列(フィールド)が、フィールド番号 1 になります。
複数の列(フィールド)をまとめて扱いたい場合は、配列を指定することも可能です。
(例)field := Array(1,3,6) - criteria1 ・・・ XlDynamicFilterCriteria 列挙型 の定数または、その値を指定します。
定数 値 説明 xlFilterToday 1 今日 xlFilterYesterday 2 昨日 xlFilterTomorrow 3 明日 xlFilterThisWeek 4 今週 xlFilterLastWeek 5 先週 xlFilterNextWeek 6 次週 xlFilterThisMonth 7 今月 xlFilterLastMonth 8 先月 xlFilterNextMonth 9 来月 xlFilterThisQuarter 10 今四半期 xlFilterLastQuarter 11 前四半期 xlFilterNextQuarter 12 次の四半期 xlFilterThisYear 13 今年 xlFilterLastYear 14 昨年 xlFilterNextYear 15 来年 xlFilterYearToDate 16 今年の初めから今日まで xlFilterAllDatesInPeriodQuarter1 17 第 1 四半期のすべての日付 xlFilterAllDatesInPeriodQuarter2 18 第 2 四半期のすべての日付 xlFilterAllDatesInPeriodQuarter3 19 第 3 四半期のすべての日付 xlFilterAllDatesInPeriodQuarter4 20 第 4 四半期のすべての日付 xlFilterAllDatesInPeriodJanuary 21 1 月のすべての日付 xlFilterAllDatesInPeriodFebruray 22 2 月のすべての日付 xlFilterAllDatesInPeriodMarch 23 3 月のすべての日付 xlFilterAllDatesInPeriodApril 24 4 月のすべての日付 xlFilterAllDatesInPeriodMay 25 5 月のすべての日付 xlFilterAllDatesInPeriodJune 26 6 月のすべての日付 xlFilterAllDatesInPeriodJuly 27 7 月のすべての日付 xlFilterAllDatesInPeriodAugust 28 8 月のすべての日付 xlFilterAllDatesInPeriodSeptember 29 9 月のすべての日付 xlFilterAllDatesInPeriodOctober 30 10 月のすべての日付 xlFilterAllDatesInPeriodNovember 31 11 月のすべての日付 xlFilterAllDatesInPeriodDecember 32 12 月のすべての日付 xlFilterAboveAverage 33 平均を上回る値 xlFilterBelowAverage 34 平均未満の値 - operator ・・・ xlFilterDynamic を指定します。
AutoFilter メソッド の引数の詳細については、オートフィルタ(AutoFilter メソッド) を参照してください。
日付フィルタを使用してレコードを抽出する例
サンプルVBAソース 1
1 2 3 4 5 6 7 8 9 10 |
Sub Sample10_1_AutoFilter() '「納品日」12月のすべての日付 Range("A1").AutoFilter Field:=10, _ criteria1:=xlFilterAllDatesInPeriodDecember, _ Operator:=xlFilterDynamic End Sub |
実行結果
サンプルVBAソース 実行前
実行後
サンプルVBAソース 2
1 2 3 4 5 6 7 8 9 10 |
Sub Sample10_2_AutoFilter() '「支払日」来年 Range("A1").AutoFilter Field:=11, _ criteria1:=xlFilterNextYear, _ Operator:=xlFilterDynamic End Sub |
実行結果
サンプルVBAソース 実行前
実行後
関連記事
-
オートフィルタの状況を確認(AutoFilterMode, FilterMode)
AutoFilterMode プロパティ AutoFilterMode プロパテ …
-
セル・セル範囲をコピーする(Copy メソッド)
Copy メソッド Copy メソッドは、セル範囲をコピーし、指定したセル範囲に …
-
セルが選択されているか確認する(TypeName 関数)
セルが選択されているか確認する方法と使用例 TypeName 関数の引数に、Se …
-
セル内の編集を禁止する(EditDirectlyInCell プロパティ)
EditDirectlyInCell プロパティ エクセルでは、セルをダブルクリ …
-
セルを参照する(Range プロパティ)
Range プロパティ 任意のセルにアクセスするには Range プロパティを使 …
-
オートフィルタ(日付による抽出)AutoFilter メソッド
日付で、抽出する(AutoFilter メソッド) 【書式】 object.Au …
-
セル内部を参照(Interior プロパティ)
Interior プロパティ Interior プロパティで、セルの内部を参照し …
-
セルの値を置換・書式設定(Replace メソッド,ReplaceFormat プロパティ)
セルの値の置換と書式設定 検索条件に一致するセルの書式を設定するには、まず、Ap …
-
使用中のセル範囲を取得(CurrentRegion プロパティ)
CurrentRegion プロパティ CurrentRegion プロパティは …
-
入力規則(他セルや数式を利用して許容値を設定)Validation オブジェクト
他のセルや数式を利用して許容値を設定する 入力規則(その5) での設定を、マクロ …