ExcelマクロVBAサンプル集
オートフィルター(AutoFilter)

ExcelマクロVBAの実用サンプル、エクセルVBA集と解説
最終更新日:2013-05-11

オートフィルター(AutoFilter)


エクセルでは、定番機能のフィルターです。


「Sheet1」のA列でフィルターし、「Sheet2」へコピーします。


Sub sample()
  Dim FilterRange As Range
  With Worksheets("Sheet1")
    Set FilterRange = .Range("A1").CurrentRegion

  End With
  FilterRange.AutoFilter Field:=1, Criteria1:="○×△"
  With Worksheets("Sheet2")
    .UsedRange.ClearContents
    FilterRange.SpecialCells(xlCellTypeVisible).Copy .Range("A1")
  End With
End Sub


ごく基本的なフィルターです。


フィルターのセル範囲指定は、いろいろな指定が可能です。


連続セル範囲の選択 」も参考にして下さい。


SpecialCells(xlCellTypeVisible)

この指定を省略しても結果は同じですが、フィルターされた結果をコピーしている事を明示しています。



既に、フィルターされている場合に、一度フィルターを解除する場合は、


Sub sample2()
  If ActiveSheet.AutoFilterMode Then
    ActiveSheet.AutoFilter
  End If
  '通常のフィルター処理を行う  

End Sub


フィルターが設定されていて、既に絞り込み等がされている可能性がある場合は、


上のように、一度フィルターを解除してから、再度フィルターを設定して下さい。





同じテーマ「マクロVBAサンプル集」の記事

ブックを開かずにセル値を取得(ExecuteExcel4Macro,Excel.Application)
罫線を簡単に引く(Borders,BorderAround)
マクロの開始・終了(Applicationのプロパティ)
オートフィルター(AutoFilter)
日付のオートフィルタ(AutoFilter)
印刷ダイアログを使用する(xlDialogPrint)
名前定義の一覧(Name)
シートを名前順に並べ替える
数式内の不要なシート名を削除する(HasFormula)
数式の参照しているセルを取得する
増殖した条件付き書式を整理統合する

新着記事NEW ・・・新着記事一覧を見る

「VBAによる解析シリーズその2 カッコ」をやってみた|エクセル(5月21日)
VBA+SeleniumBasicで検索順位チェッカー作成|VBA技術解説(5月18日)
テーブル操作のVBAコード(ListObject)|VBA入門(5月12日)
テーブル操作の概要(ListObject)|VBA入門(5月12日)
VBAのスクレイピングを簡単楽にしてくれるSelenium|VBA技術解説(5月6日)
Excelワークシート関数一覧(2010以降)|VBAリファレンス(4月22日)
クラスとCallByNameとポリモーフィズム(多態性)|VBA技術解説(4月6日)
VBAでのタイマー処理(SetTimer,OnTime)|VBA技術解説(4月3日)
クラスとイベントとマルチプロセス並列処理|VBA技術解説(4月2日)
エクセルの日付と時刻のまとめ|エクセル関数超技(3月6日)

アクセスランキング ・・・ ランキング一覧を見る

1.ひらがな⇔カタカナの変換|エクセル基本操作
2.最終行の取得(End,Rows.Count)|VBA入門
3.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
4.Range以外の指定方法(Cells,Rows,Columns)|VBA入門
5.RangeとCellsの使い方|ExcelマクロVBA入門
6.変数とデータ型(Dim)|ExcelマクロVBA入門
7.マクロって何?VBAって何?|ExcelマクロVBA入門
8.繰り返し処理(For Next)|ExcelマクロVBA入門
9.とにかく書いて見よう(Sub,End Sub)|VBA入門
10.セルに文字を入れるとは(Range,Value)|VBA入門



  • >
  • >
  • >
  • オートフィルター(AutoFilter)

    このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。


    記述には細心の注意をしたつもりですが、
    間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
    なお、掲載のVBAコードは自己責任で使ってください。万一データ破損等の損害が発生しても責任は負いません。






    このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。

    本文下部へ