オートフィルタ(日付フィルタ)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ソース 実行前
実行後
関連記事
-
-
セルを削除する(Delete メソッド)
Delete メソッド Delete メソッドで、指定したセル・セル範囲を削除し …
-
-
オートフィルタの状況を確認(AutoFilterMode, FilterMode)
AutoFilterMode プロパティ AutoFilterMode プロパテ …
-
-
セルの幅・高さの自動調整(AutoFit メソッド)
AutoFit メソッド AutoFit メソッドは、指定したセル・セル範囲(R …
-
-
フリガナ(Phonetics プロパティ)
Phonetics プロパティ Phonetics コレクションを返します。値の …
-
-
セル範囲を結合・結合を解除(Merge メソッド・UnMerge メソッド)
Merge メソッド・UnMerge メソッド セルを結合するには、指定したセル …
-
-
セルのロック(Locked プロパティ)
セルのロック(Locked プロパティ) Locked プロパティで、セルのロッ …
-
-
並べ替え(Sort メソッド)
Sort メソッド 任意のセル範囲内で、並べ替えを行います。引数で、並べ替えの条 …
-
-
A1 形式と R1C1 形式を変換、相対参照と絶対参照を変換(ConvertFormula)
ConvertFormula メソッド 数式で参照しているアドレスの相対参照と絶 …
-
-
オートフィルタ(抽出件数の取得・結果集計)AutoFilter メソッド
ワークシート関数の Subtotal 関数 の使い方 VBA には、オートフィル …
-
-
列幅を取得・設定・する(ColumnWidth プロパティ)
ColumnWidth プロパティ ColumnWidth プロパティは、対象セ …