フィルタがかかっているかどうかを取得したいのですが
フィルタがかかっているシートにて
Sub test1()
If ActiveSheet.FilterMode Then
MsgBox "フィルタがかかってます"
End If
End Sub
Sub test1の1()
If ActiveSheet.FilterMode = True Then
MsgBox "フィルタがかかってます"
End If
End Sub
を実行しても"フィルタがかかってます"は表示されません。
Sub test2()
If Rows(1).FilterMode Then
MsgBox "フィルタがかかってます"
End If
End Sub
Sub test3()
If ActiveSheet.Rows(1).FilterMode Then
MsgBox "フィルタがかかってます"
End If
End Sub
こちらは
オブジェクトは、このプロパティまたはメソッドをサポートしていません。(Error 438)
になってしまいます。
フィルタがかかっているか調べる方法はありますか?
よろしくお願いします。
No.2ベストアンサー
- 回答日時:
すでにWendy02さんから回答がでていますが、付け加えますと
シートにオートフィルタが設置されていれば、そのオートフィルタの状態の如何にかかわらずAutoFilterModeでTrueが返ります。
これに対し、設置されたオートフィルタが、何らかのフィルタ指示をされてフィルタがかかった状態であればFilterModeでTrueが返ります。(フィルタが設置されていても何もフィルタ指示をされていない状態は、通常フィルタがかかっているとは言いません。)
No.3
- 回答日時:
似た表現のものに、AutoFilterモードとFilterモードの2つが有るようです。
どちらもObjectはシートObjectに対してです。
その違いは、
Sub test01()
ActiveSheet.Range("A:A").AutoFilter
'これでA列に▼がつく
'下記で▼が消える
ActiveSheet.Range("A:A").AutoFilter 'X
ActiveSheet.AutoFilterMode = False 'range指定なし
MsgBox ActiveSheet.AutoFilterMode
ActiveSheet.Range("A:A").AutoFilter
MsgBox ActiveSheet.AutoFilterMode
End Sub
Xの行をコメントアウトをしたり生かしたりして、情況を理解してください。
▼を表示している(する)モードの設定と状態取得をします。
ーー
FilterModeは
http://www.eurus.dti.ne.jp/~yoneyama/Excel/vba/v … の
>FilterModeプロパティではAutoFilterがONでもデータが抽出されていないどきはFalseのままですので、AutoFilterModeプロパティを利用します。 を参照のこと。
データが
商品▼
a
s
a
s
d
f
a
で書き事項すると、False
Sub test02()
MsgBox ActiveSheet.FilterMode
End Sub
フィルタして
商品▼
a
a
a
の状態にして、実行するとTrueです。
「すべて」を選ぶと上記実行はFalse
以上を参考に考えてみてください。
No.1
- 回答日時:
こんばんは。
回答自体は、たぶん、以下のようなことなんでしょう。
でも、ふと思ったけれども、これは、私たち、英語を母国語としない者にとって、損ですね。
"Filter" というのは、日本語でいうと、「ふるいにかけた」ということで、「すべて」出ているときは、"Filter" とは言わないからです。
Sub test1a()
If ActiveSheet.AutoFilterMode Then
MsgBox "フィルタがかかってます"
End If
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) オブジェクトが見つかりません 1 2023/06/24 19:43
- Visual Basic(VBA) [Excel VBA] このコードでは行の挿入や行の消去をすると13のエラーが出てしまう。 3 2022/12/09 00:29
- Visual Basic(VBA) VBAユーザーフォームでテキストボックスについて。 1 2022/05/31 12:23
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/06 17:46
- Visual Basic(VBA) 【追加】ファイルを閉じてダイアログで保存した時だけ処理の実行をする 3 2022/03/23 15:43
- Excel(エクセル) VBAについて 3 2022/06/19 18:19
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る バッチからEXEの結果を受け取りたいのですが、 下記のバッ 1 2023/07/04 15:13
- Excel(エクセル) エクセルVBAでオブジェクトが必要です 2 2022/09/10 16:37
- Visual Basic(VBA) Excel VBA ユーザーフォーム 複数のユーザーフォームの閉じ方。 2 2022/04/27 11:29
- Excel(エクセル) 2つのVBAを一緒にしたら機能しなくなりました(エクセル) 7 2022/06/02 12:41
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教えるわが家の防犯対策術!
ホームセキュリティのプロが、家庭の防犯対策を真剣に考える 2組のご夫婦へ実際の防犯対策術をご紹介!どうすれば家と家族を守れるのかを教えます!
-
ACCESS VBA メインフォーム及びサブフォームのフィルタのクリア
Access(アクセス)
-
Access サブフォームでの選択行の取得
その他(データベース)
-
フィルタ後のフォームの件数の取得の仕方
Access(アクセス)
-
-
4
サブフォームに対してGoToRecordするには?
その他(Microsoft Office)
-
5
【ACCESS2000】 サブフォームのフィルタ方法
その他(データベース)
-
6
Accessで、フォームからフォームへ値を引き継ぐやり方
Access(アクセス)
-
7
アクセスで#エラーを表示させない方法は?
Access(アクセス)
-
8
Accessを開きなおすとテキストボックスの値がエラー#Name?になる
その他(データベース)
-
9
ACCESSで値を代入できないとは?
Visual Basic(VBA)
-
10
Access フォームのテキストボックスに半角英字のみで入力する設定は
Access(アクセス)
-
11
サブフォームを非表示させる方法を教えて下さい
その他(Microsoft Office)
-
12
Accessでレコードを別テーブルへコピーするには
Access(アクセス)
-
13
アクセスVBAで既に開いているエクセルを閉じたい
Yahoo!ショッピング
-
14
日付型のフィールドに空白を入れる方法を教えてください
その他(データベース)
-
15
アクセスのフィルタ nullについて。
その他(データベース)
-
16
Accessのマクロでモジュールを実行させたい。
Access(アクセス)
-
17
Access 最後のレコードに到達するまでループ処理を行う方法
Access(アクセス)
-
18
Accessでフィールド名を変数(文字列)で・・・
Access(アクセス)
-
19
ACCESSのレポートで書式設定が元に戻ってしまうのですが・・・
Access(アクセス)
-
20
Accessの画面更新を一時的に停止する方法。
その他(データベース)
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルでオートフィルタのボ...
-
エクセルで時刻(8:00~20:00)...
-
エクセルのオートフィルタで最...
-
Excelのオートフィルタで非表示...
-
エクセルの偶数行(奇数行)の抽出
-
access マクロでのフィルタの...
-
エクセルで検索窓のようなもの...
-
データの抽出を教えてください
-
エクセルで、条件に一致した行...
-
関数で小数点以下を抽出したい
-
【EXCEL】条件に一致した最新デ...
-
Excel共有ブックのオートフィル...
-
【Excel/関数/条件付き書式】月...
-
なぜShowAllDataだとうまく行か...
-
エクセルVBAで検索してシートへ...
-
Excel 非表示の列を飛ばして合...
-
オートフィルタで3つ以上の条...
-
結合したセルのオートフィルタ...
-
Excelの数式についての質問
-
excelオートフィルタの検索条件...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで時刻(8:00~20:00)...
-
エクセルでオートフィルタのボ...
-
エクセルのオートフィルタで最...
-
Excelのオートフィルタで非表示...
-
【EXCEL】条件に一致した最新デ...
-
エクセルの偶数行(奇数行)の抽出
-
エクセルで、条件に一致した行...
-
access マクロでのフィルタの...
-
オートフィルタで3つ以上の条...
-
エクセルで検索窓のようなもの...
-
エクセル関数で、数字の入った...
-
Excel共有ブックのオートフィル...
-
Excelオートフィルターで絞り込...
-
データの抽出を教えてください
-
エクセル・条件付で行を削除す...
-
なぜShowAllDataだとうまく行か...
-
オートフィルタで選択したデー...
-
エクセル、オートフィルタで最...
-
可視セルを対象としたcountifが...
-
【Excel/関数/条件付き書式】月...
おすすめ情報