Excel VBA(マクロ)でワークシートにオートフィルターが条件を絞り込んでいるか判定する方法/AutoFilter.FilterModeプロパティの使い方

yashica IT

ワークシートに対してAutoFilterプロパティをくっつけるとAutoFilterオブジェクトを取得することができ、AutoFilterオブジェクトにFilterModeプロパティをくっつけるとフィルタが条件を絞っているかどうかを戻り値として得ることができます(読み取り専用)。フィルタがあるとTrueになります。
RangeにAutoFilterを付けるとAutoFilterメソッドになりますが、Worksheetsなどに付けた場合はプロパティとなります。

スポンサーリンク

AutoFilterプロパティの使い方

sheetfilterrange1
こんな感じのフィルタがかかった票のあるシートがあるとして、
' vba
MsgBox Worksheets("Sheet82").AutoFilter.FilterMode
シートに対し.AutoFilter.FilterModeをくっつけたものを出力します。
sheetfilterrange2
すると、シート内のフィルタが条件を絞り込んでいる場合はTrueが返り、
sheetfilterrange3
条件を絞り込んでない場合はFalseを返します。
やりたいことから方法を探すエクセル(Excel)操作・関数・VBA(マクロ)逆引きまとめ
逆引き(やりたいことから探す)Excel記事まとめ
関数・演算子・メソッド・プロパティ名から探すExcel/VBA(マクロ)使い方・組み合わせ方まとめ
こちらはExcelやメソッドの諸機能を、機能の名称から探せるまとめ記事です。

コメント