ExcelWork.info

Excel(エクセル)のマクロ・VBA・関数・操作などのメモ

オートフィルタ(日付による抽出)AutoFilter メソッド

   

日付で、抽出する(AutoFilter メソッド)


【書式】

object.AutoFilter ( [ field, criteria1, operator, criteria2 ] )


引数・戻り値

  • object  ・・・  対象となる Range オブジェクトを指定します。
  • field  ・・・  フィルターの対象となるフィールド番号を整数で指定します。対象となる範囲の最も左側の列(フィールド)が、フィールド番号 1 になります。
    複数の列(フィールド)をまとめて扱いたい場合は、配列を指定することも可能です。
     (例)field := Array(1,3,6)
  • criteria1  ・・・  日付を指定します。
  • criteria2  ・・・  複数(2日)の日付を指定したり、特定の期間を指定する場合にのみ日付を指定します。指定方法は、operator の説明を参照してください。
  • operator  ・・・  特定の日付(1日)を指定する場合は、xlAndxlOr を指定します(省略可)。
    複数(2日)の日付を指定する場合は、xlOr を指定し、引数 criteria1criteria2 に抽出したい日付を指定します。
    特定の期間の抽出をする場合は以下のとおりに指定します。

    引数 内容
    criteria1 “>= [開始日]” または、“> [開始日]” を指定します。
    criteria2 “<= [終了日]” または、“< [終了日]” を指定します。
    operator xlAnd を指定します。



    ※ 3日以上の日付を指定する場合は、xlFilterValues を指定します(Excel 2007 以上のみ)。引数 criteria1 に抽出したい日付を配列で指定します。



日付を指定する場合の注意事項
オートフィルタで、レコードを抽出するとき日付によって絞り込む場合、Excel のバージョンによって抽出結果が、異なる場合があります。以下の表のとおりに行うと期待通りの結果が得られるはずですが、念のため、マクロの記録等などで、確認するほうがよいかもしれません。

セルの表示形式 Excel Ver. 引数 criteria1 に指定する内容
先頭に「*」が付く日付形式
  2015/7/26
 
 
 
2003/2007
 
 
 
 
DateValue 関数を指定
  criteria1 := DateValue(“2015/7/26”)
 または
日付リテラルを指定
  criteria1 := #7/26/2015#
先頭に「*」が付く日付形式
  2015/7/26
2010/2013
 
文字列形式で指定
  criteria1 := “2015/7/26”
先頭に「*」が付かない日付形式
  7月26日
2003/2007
2010/2013
セルに表示されているままを文字列で指定
  criteria1 := “7月26日”



日付を指定する場合、すべてのバージョンで同じ結果を得る方法
「特定の期間」を抽出する方法を利用することで、書式にかかわらず、Excel 2003/2007/2010/2013 のいずれのバージョンでも特定の日付を抽出可能です。
(例)2015/7/26 を抽出したい場合
  criteria1 =: “>=2015/7/26”
  criteria2 =: “<=2015/7/26”
  operator =: xlAnd


AutoFilter メソッド の引数の詳細については、オートフィルタ(AutoFilter メソッド) を参照してください。



日付で抽出する 使用例

サンプルVBAソース 実行前

AutoFilter メソッド 日付1



サンプルVBAソース 1


実行結果

AutoFilter メソッド 日付1 1 



サンプルVBAソース 2


実行結果

AutoFilter メソッド 日付1 2



サンプルVBAソース 3


実行結果

AutoFilter メソッド 日付1 3



サンプルVBAソース 4


実行結果

AutoFilter メソッド 日付1 4



サンプルVBAソース 5


実行結果

AutoFilter メソッド 日付1 5


 - セルの操作 , , , ,

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

  関連記事

入力規則(Validation オブジェクト)

Validation オブジェクト セル範囲に入力できる値を制限するには 入力規 …

ワイルドカードを使って検索(Find メソッド)

Find メソッド 指定したセル範囲内の特定の情報を含むセルを検索します。 【書 …

セル内部を参照(Interior プロパティ)

Interior プロパティ Interior プロパティで、セルの内部を参照し …

文字の向きを表す値を取得・設定する(Orientation プロパティ)

Orientation プロパティ Orientation プロパティで、文字列 …

終端セルを参照する(End プロパティ)

End プロパティ End プロパティは、基準となるセルが含まれる領域の指定した …

フリガナの設定(Characters プロパティ,PhoneticCharacters メソッド)

Characters プロパティ Characters プロパティは、文字範囲を …

行・列の表示・非表示(Hidden プロパティ)

Hidden プロパティ Hidden プロパティに True を設定することで …

セルを参照する(Cells プロパティ)

Cells プロパティ Cells プロパティは、ワークシートの行番号と列番号を …

セルが結合セルの一部である場合、その結合セルの範囲を取得(MergeArea プロパティ)

MergeArea プロパティ MergeArea プロパティは、指定したセルが …

FormulaHidden プロパティ 例1
数式を非表示にする(FormulaHidden プロパティ)

FormulaHidden プロパティ 数式が入力されたセルを選択するとその数式 …