ExcelWork.info

オートフィルタ(日付フィルタ)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


実行結果

サンプルVBAソース 実行前

実行後



サンプルVBAソース 2


実行結果

サンプルVBAソース 実行前

実行後