【AdvancedFilter】テーブルからデータ抽出
テーブルから条件を指定して抽出する
Worksheets("").Range("").AdvancedFilter _'テーブルを指定
Action:=xlFilterCopy, _
CriteriaRange:=Worksheets("").Range(""), _'抽出条件がある範囲を指定
CopyToRange:=Worksheets("").Range(""), _'抽出先を指定
Unique:=False
End Sub
Action 必須 |
xlFilterCopy (値は2) |
リスト範囲とは他の場所に抽出データをコピーします |
xlFilterInPlace (値は1) |
リスト範囲内にデータを抽出します | |
CriteriaRange (省略可能) |
Variant型の値を使用する | 検索条件範囲を指定します。 省略すると、検索条件なしで抽出されます。 |
CopyToRange (省略可能) |
Variant型の値を使用する | 引数 ActionがxlFilterCopyのときは、抽出された行のコピー先のセル範囲を指定します。 それ以外の場合、この引数は無視されます。 |
Unique (省略可能) |
True | 検索条件に一致するレコードのうち、重複するレコードは無視されます。 |
FALSE | 重複するレコードも含めて、検索条件に一致するレコードがすべて抽出されます。 |
・複数条件の指定方法
横に並べるとand、縦に並べるとor になる
フィールド1 | フィールド1 | フィールド2 |
abc | def | ghi |
123 | 456 | 789 |
この場合、or(and(フィールド1=abc,フィールド1=def,フィールド2=ghi),and(フィールド1=123,フィールド1=456,フィールド2=789))
が抽出される