- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルのマクロでフィルタを判別するマクロ)
エクセルのマクロでフィルタを判別する方法
このQ&Aのポイント
- エクセル2000で使用されるオートフィルタを判別するマクロの記述方法を教えてください。
- 特定のフィルタが適用されている場合と適用されていない場合で、マクロの動作を切り替える方法を教えてください。
- マクロを使用して、フィルタが適用されていない場合に特定の操作を実行する方法を教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは。KenKen_SP です。 こんな感じかと。。 Sub Sample() Dim AF As AutoFilter On Error Resume Next Set AF = ActiveSheet.AutoFilter If Not AF Is Nothing Then If AF.Filters(1).On = True Then MsgBox "一番左側のフィルタがONです" Else MsgBox "一番左側のフィルタがOFFです" AF.Range.AutoFilter Field:=1, _ Criteria1:="<>#N/A", _ Operator:=xlAnd End If Else MsgBox "AutoFilter がない" End If Set AF = Nothing End Sub
その他の回答 (1)
- hana-hana3
- ベストアンサー率31% (4940/15541)
回答No.1
VBAでは、該当シートにフィルタ設定が設定されいるかどうかのチェックしか出来ませんので、フィルタの個々の設定状態を取得する事も出来ません。 従って、常に「フィルタ解除」「フィルタ設定」の手順を踏む事になります。 Selection.AutoFilter Field:=1 Selection.AutoFilter Field:=1, Criteria1:="<>#N/A", Operator:=xlAn
お礼
おおおぉ! 完璧です。 助かりました。 本当にありがとうございます☆