ExcelマクロVBAサンプル集 | オートフィルター(AutoFilter) | Excelマクロの実用サンプル、エクセル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


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


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





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

日付のオートフィルタ(AutoFilter)
印刷ダイアログを使用する(xlDialogPrint)
名前定義の一覧(Name)
シートを名前順に並べ替える
数式内の不要なシート名を削除する(HasFormula)
数式の参照しているセルを取得する
シートの追加・削除(Add,Delete)

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

大量VlookupをVBAで高速に処理する方法について|ExcelマクロVBA技術解説(12月12日)
オセロを作りながらマクロVBAを学ぼう|ExcelマクロVBAサンプル集(11月26日)
ScreenUpdating=False時にエラー停止後にシートが固まったら|ExcelマクロVBA技術解説(11月21日)
データクレンジングと名寄せ|ExcelマクロVBA技術解説(10月20日)
SUMIFの間違いによるパフォーマンスの低下について|エクセル関数超技(6月17日)
条件式のいろいろな書き方:TrueとFalseの判定とは|ExcelマクロVBA技術解説(6月15日)
空白セルを正しく判定する方法2|ExcelマクロVBA技術解説(5月6日)
フルパスをディレクトリ、ファイル名、拡張子に分ける|ExcelマクロVBA技術解説(4月15日)
テキストボックスの各種イベント|Excelユーザーフォーム入門(4月9日)
フォルダ(サブフォルダも全て)削除する、Optionでファイルのみ削除|ExcelマクロVBAサンプル集(4月4日)

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

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



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

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


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

    ↑ PAGE TOP