
エクセルのテーブルデータがあります。
マクロを作成しながらテーブルの値をフィルタリングしたりしています。
マクロの試行錯誤を繰り返しているうちに、フィルターが解除出来なくなります。
画像のようにグレーになっていて押せません。
画面更新等をtrueにしてもグレーのままです。
Application.ScreenUpdating = True
Application.EnableEvents = True
試しに
If ActiveSheet.AutoFilterMode = True Then
MsgBox "設定されています"
Else
MsgBox "設定されていません"
End If
これを実行してみると、フィルターの三角ボタンはあるのに、設定されていませんと出てきます。
おかげで、動いていたオートフィルターやスライサーのマクロが動きません。
フィルターがないとエラーでます。
直す方法は、別ブックに値のみ貼り付けそこでテーブルを作成し既存のブックに戻してあげる。
これにより、フィルターが復活します。
原因は何なのでしょうか?
直す方法があるのでしょうか?

No.3ベストアンサー
- 回答日時:
#1です。
原因は、分かりませんが、#1で示したように
If ActiveSheet.ListObjects(1).ShowAutoFilter = True Then
MsgBox "設定されています"
Else
MsgBox "設定されていません"
End If
こちらを試してみてください。
インデックス1どうかは、解りませんが
テーブルのフィルタがある場合、Trueが返されます。
解除の場合も、.ListObjects(1).ShowAutoFilter で
返信、ありがとうございます。
試したところ、フィルターの三角ボタンは存在しているのに
設定されていません、と出ます。
マクロで解除も出来ない、なので新規ブックにコピーしテーブルを作り直すことしか解決はないのでしょうか。
テーブルを参照している関数が沢山ある場合はとても大変です。
今までもマクロを一行ずつ動かしたり原因を探し続けてきたのですが解決には至らず・・・。あきらめます!
これからは常にテーブルを二つ作り対応していきます。
ご親切にありがとうございました。
No.1
- 回答日時:
こんにちは、
あてずぽな回答ではありますが、
フィルタは、テーブル外にかけていますか?テーブルにですか?
解除は同様にテーブルですか外ですか?
解除はマクロで行っているのかな?
.AutoFilterMode = False ?
.ListObjects(1).ShowAutoFilter = False ?
見当違い、頓珍漢だったら忘れてね
お返事ありがとうございます。
データをテーブルに変換したときに自動で付くフィルターです。
テーブルの値を集計するために、マクロで何度も絞り込んだり解除したりしています。
そして気がつくといつの間にか図のようにグレーになっています。
もちろんテーブル外をセル選択しているとフィルター操作は出来ません。
通常だとツールバーのホームタブ→並び替えとフィルター→フィルターと押すとフィルターが付いたり消えたりします。
画像のように、それさえ出来なくなります。
最終的にマクロを使ってフィルターを取り除こうとしてもフィルターが無いと判断されます。絞り込んで結果を返そうと思ってもフィルターが無いと判断されます。マクロで無いと判断されても手動では絞り込んだり出来ます。
フィルターボタンを押せなくても、マクロで無いと判断されなければ、完璧に動いています。
No2の方が言うロジックミスも考えられますが、ツールバーから解除出来ない、マクロでもフィルターを取ることが出来ない、
しかし、マクロは機能していて絞り込み結果が返ってきています。
使用している打ちに突然、エラーが出てきてフィルターが無いと判断されます。
どのタイミングでそうなるのかは不明です。
さっきまで動いていたマクロが突然動かなくなりフィルターが無いとエラーが出ます。そうしてテーブルを見るとフィルターが解除出来なくなっています。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) ExcelVBA ドロップボックスで月を選択するとそれ以降のデータが残るようにしたい。 3 2022/12/16 14:53
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/06 17:46
- Excel(エクセル) Excelのマクロコードについて教えてください。 1 2022/03/27 10:47
- Visual Basic(VBA) VBAのユーザーフォームのテキストボックスに入力制限をしたい 6 2022/11/15 08:28
- Visual Basic(VBA) マクロ実行時、自動で背景色を変えたい。 C列にあるチェックボックスをチェックするとB列に「TRUE」 4 2022/11/08 11:14
- Excel(エクセル) フォルダ内の全ブックのシート名を変更したい 7 2022/09/22 21:34
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- Visual Basic(VBA) エクセルで、1つのセルで上書き足し算して セルの範囲を指定できますか? パソコン初心者です。 お時間 3 2023/07/05 06:13
- Excel(エクセル) 2つのVBAを一緒にしたら機能しなくなりました(エクセル) 7 2022/06/02 12:41
- Visual Basic(VBA) エクセルのマクロを使ってメールを送る方法について教えてください 2 2022/03/29 01:36
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ACCESSユニオンクエリから新テ...
-
クエリで同一テーブルの複数回...
-
access2000・・テーブルをデー...
-
2つのテーブルに共通するレコ...
-
Accessでリストの並び順を変更...
-
頭の0を消したい
-
Accessのテーブルで、リンク?...
-
Accessのリンクされたテーブル...
-
アクセスでフォームが消える(...
-
access vbaにてテンポラリーテ...
-
ACCESS テーブルを見比...
-
accessのテーブルを閉じたとき...
-
ユニオンクエリをデザインビュ...
-
Accesss テーブルの最終更新日...
-
Accessで使用しているリンクテ...
-
AccessでのリンクテーブルとADO...
-
accessエラー回避について
-
アクセスでデータ型を一括変換...
-
アクセス 部分一致の抽出
-
ACCESSで出欠リストを管理する
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
2つのテーブルに共通するレコ...
-
ACCESSユニオンクエリから新テ...
-
テーブルに表示されているもの...
-
Accessのリンクされたテーブル...
-
access vbaにてテンポラリーテ...
-
Acccessで2つのテーブルから1...
-
最新日のデータのみ抽出するク...
-
Accessのテーブルで、リンク?...
-
Accessでリストの並び順を変更...
-
アクセス 部分一致の抽出
-
ACCESS テーブルを見比...
-
ACCESSでテーブルをコピーしよ...
-
accessのテーブルを閉じたとき...
-
ACCESS テーブルを見比...
-
AccessでのリンクテーブルとADO...
-
クエリで同一テーブルの複数回...
-
accessエラー回避について
-
アクセス2016 チェックボックス...
-
Access 分割したテーブルを一対...
-
access2000・・テーブルをデー...
おすすめ情報