関数・メソッド

オートフィルタでデータが抽出されているか判断する【FilterModeプロパティ】【ExcelVBA】

FilterModeプロパティ

ワークシートに設定されているオートフィルタを調べることで、
実際にデータが絞り込まれているかどうかを判断することができます。

オートフィルタによりデータが抽出されている場合は、True を返します。

構文
Object.FilterMode

ObjectWorksheetオブジェクトを表す変数です。

 

データが抽出されているか確認できるサンプルコード

Public Sub Sample()
 'データを入力しておく
  Range("A1") = "aaa"
  Range("A2") = "123"
  'オートフィルタで「123」を絞り込む
  Range("A1").AutoFilter Field:=1, Criteria1:="123"

  '■データが抽出されているかの確認
  With ActiveSheet
      'データが抽出されている場合の処理
      If .FilterMode Then
          Debug.Print "データの抽出されています"
      'データが抽出されていない場合の処理
      Else
          Debug.Print "データが抽出されていません"
      End If
  End With

End Sub

 

注意点

  • Excel2007以降の機能です。
  • 似ているものに AutofilterMlodeプロパティ がありますが、
    こちらは「オートフィルタが設定されているか」を調べることができます。
    FilterMode と AutoFilterMode は用途が異なるものです。

 

関連記事

コメント

タイトルとURLをコピーしました