Excel

【Excel】エクセルでフィルターを一括解除する方法(全シート・ショートカット・できない・まとめて外す)

当サイトでは記事内に広告を含みます
いつも記事を読んでいただきありがとうございます!!! これからもお役に立てる各情報を発信していきますので、今後ともよろしくお願いします(^^)/

Excelでフィルターをかけたまま作業を続けていると、「どの列にフィルターがかかっているかわからなくなった」「全部まとめて解除したいのにひとつずつしか外せない」と感じたことはないでしょうか。

特に複数のシートにまたがってフィルターが設定されている場合、ひとつひとつ手動で解除していくのは非常に手間がかかります。

本記事では、Excelでフィルターを一括解除する方法を、全シート対応・ショートカットキーの活用・できないときの対処法まで、操作イメージ図を交えながらわかりやすく解説します。

VBAマクロを使った自動化の方法も紹介しますので、日常的にExcelでデータ管理をされている方にも役立てていただける内容です。

それでは、さっそく内容を確認していきましょう。

【Excel】エクセルでフィルターを一括解除する方法(全シート・ショートカット・できない・まとめて外す)

それではまず、Excelでフィルターを一括解除する方法の結論から解説していきます。

Excelでフィルターをまとめて外すには、「データ」タブの「クリア」ボタンで絞り込みを解除する方法と、フィルター機能そのものをオフにする方法の2種類があります。

全シートのフィルターを一括解除したい場合はVBAマクロが最も効率的で、数行のコードでブック内すべてのシートのフィルターを解除できます。

ショートカットキーを使えば、キーボードだけで素早く絞り込みを解除することも可能です。

フィルター一括解除の最重要ポイントは3つです。

① 絞り込みだけを解除(フィルターボタンは残す)には「データ」タブ→「クリア」またはAlt→A→Cのショートカットを使います。

② フィルター機能ごとオフにするには「データ」タブ→「フィルター」ボタンのクリックまたはCtrl+Shift+Lを使います。

③ 全シートを一括処理するにはVBAマクロで「For Each ws In Worksheets」ループを使うのが最も効率的です。

以下のイメージ図は、フィルターがかかった状態のExcelシートと、解除後の状態を模擬したものです。

この図を参考に、次のセクションから具体的な解除手順を詳しく確認していきましょう。

フィルターの絞り込みを解除する基本操作とショートカット

それではまず、Excelのフィルター絞り込みを解除する基本操作とショートカットキーの使い方について解説していきます。

「クリア」と「フィルターのオフ」は似ているようで動作が異なるため、違いを正しく理解しておくことが大切です。

「データ」タブの「クリア」で絞り込みだけを解除する

フィルターの絞り込みを解除する最も基本的な方法が、「データ」タブの「クリア」ボタンを使う方法です。

フィルターがかかっているシート内のセルを選択した状態で「データ」タブをクリックし、「並べ替えとフィルター」グループにある「クリア」をクリックします。

この操作で絞り込み条件がすべて解除され、非表示になっていた行がすべて表示される状態に戻ります。

フィルターボタン(▼)はそのまま残るため、別の条件でフィルターをかけ直したい場面に向いた方法です。

絞り込み解除の手順(クリアボタン使用)

手順① フィルターがかかっているシート内の任意のセルをクリック

手順② 「データ」タブをクリック

手順③ 「並べ替えとフィルター」グループの「クリア」をクリック

手順④ 非表示だった行がすべて表示されたことを確認する

ショートカットキーでフィルターを素早く操作する方法

マウス操作なしでフィルターを操作したい場合は、ショートカットキーが非常に便利です。

絞り込みを解除するショートカットは、Alt→A→Cの順にキーを押す方法です。

これはAltでリボン操作モードにし、A(データタブ)→C(クリア)と順番に押すことで「クリア」を実行するキー操作です。

フィルター機能そのものをオン・オフ切り替えるにはCtrl+Shift+Lが使えます。

このショートカットを押すたびにフィルターのオン・オフが交互に切り替わるため、フィルターを完全に外したいときにも役立ちます。

フィルター関連ショートカットキー一覧

Ctrl+Shift+L → フィルターのオン・オフ切り替え

Alt → A → C → 絞り込みのクリア(フィルターボタンは残る)

Alt → A → T → フィルターのオン・オフ切り替え(Ctrl+Shift+Lと同じ)

Alt → ↓ → フィルタードロップダウンを開く(ヘッダーセル選択時)

列ごとに個別でフィルターを解除する方法

複数の列にフィルターがかかっている場合に、特定の列だけ絞り込みを解除したいこともあるでしょう。

対象の列のフィルターボタン(▼)をクリックしてドロップダウンを開き、「”○○”からフィルターをクリア」をクリックするとその列の絞り込みだけを解除できます。

他の列の絞り込みはそのまま維持されるため、条件を部分的に変更したいときに重宝する操作です。

なお、絞り込みがかかっている列のフィルターボタンは通常の「▼」ではなく「🔽(ファンネルアイコン付き)」で表示されるため、どの列に絞り込みがあるかひと目で確認できます。

🟢 Microsoft Excel – 列ごとのフィルター解除ドロップダウン

A B C
1 商品名 ▼ 地域 🔽 売上 ▼
3 商品A 東京 150,000
5 商品C 東京 98,000

B列の▼をクリックすると表示されるメニュー
🔼 昇順
🔽 降順
色で並べ替え
✕ “地域”からフィルターをクリア ← ここをクリック
色フィルター
テキストフィルター
(すべて選択)
東京
大阪
📌 絞り込み中の列(B列)のドロップダウンには「”地域”からフィルターをクリア」が表示されます。これをクリックするとB列の絞り込みのみ解除され、他の列の条件は維持されます。

全シートのフィルターをまとめて一括解除する方法

続いては、ブック内の全シートに設定されたフィルターをまとめて一括解除する方法を確認していきます。

シートが多いブックでは、ひとつひとつ手動で解除するのは現実的ではありません。

VBAマクロを使った効率的な一括処理の方法を解説します。

VBAマクロで全シートのフィルター絞り込みを一括解除する

ブック内のすべてのシートの絞り込みをまとめてクリアするには、VBAマクロによる自動処理が最も効率的です。

以下のコードを実行すると、全シートのフィルター絞り込み条件が一括でクリアされます。

フィルターボタン(▼)はそのまま残り、絞り込みのみが解除される動作です。

Sub 全シートのフィルターをクリア()

Dim ws As Worksheet

For Each ws In Worksheets

If ws.AutoFilterMode Then

If ws.FilterMode Then

ws.ShowAllData

End If

End If

Next ws

MsgBox “全シートのフィルター絞り込みを解除しました。”

End Sub

「ws.AutoFilterMode」でフィルターが設定されているかを確認し、「ws.FilterMode」で絞り込みが適用されているかをチェックしています。

「ws.ShowAllData」が絞り込みを解除するコマンドで、これにより非表示の行がすべて表示された状態に戻ります。

最後のMsgBoxは実行完了を知らせるメッセージです。不要であれば削除しても問題ありません。

VBAマクロで全シートのフィルター機能ごとオフにする

絞り込みのクリアではなく、フィルターボタン(▼)ごと完全に削除したい場合は、以下のコードを使います。

Sub 全シートのフィルターをオフ()

Dim ws As Worksheet

For Each ws In Worksheets

If ws.AutoFilterMode Then

ws.AutoFilterMode = False

End If

Next ws

MsgBox “全シートのフィルターをオフにしました。”

End Sub

「ws.AutoFilterMode = False」を設定するだけで、そのシートのフィルター機能が完全にオフになりフィルターボタンも消えます。

「クリア」との使い分けとして、フィルターを完全にリセットしたい場合はこちらのコードが適しています。

VBAエディタはAlt+F11で開き、「挿入」→「標準モジュール」にコードを貼り付けてF5キーで実行してください。

🟢 VBAエディタ – 全シートフィルター一括解除マクロのイメージ
ファイル(F)
編集(E)
表示(V)
挿入(I)
デバッグ(D)
▶ 実行(R)

VBAProject
📄 Sheet1(月次)
📄 Sheet2(週次)
📄 Sheet3(年次)
📝 Module1 ← ここに貼り付け

Sub 全シートのフィルターをクリア()
Dim ws As Worksheet
For Each ws In Worksheets
If ws.AutoFilterMode Then
If ws.FilterMode Then
ws.ShowAllData ‘ 絞り込み解除
End If
End If
Next ws
MsgBox “全シートの絞り込みを解除しました。”
End Sub
▶ Alt+F11でVBAエディタを開く → 挿入→標準モジュール → コードを貼り付け → F5で実行

「クリア」と「フィルターオフ」の違いと使い分け

「絞り込みのクリア」と「フィルター機能のオフ」は似ているようで動作が大きく異なります。

以下の表に違いと使い分けをまとめましたので、目的に合った方法を選んでください。

操作 絞り込み解除 ▼ボタン消える 向いている場面
データ→クリア ✕(残る) 絞り込みだけ解除してフィルター機能は維持したいとき
Ctrl+Shift+L ◎(消える) フィルター機能ごとオフにしたいとき(再度押すとオンに戻る)
VBA ShowAllData ✕(残る) 全シートの絞り込みを一括でクリアしたいとき
VBA AutoFilterMode=False ◎(消える) 全シートのフィルターを完全に削除したいとき
列ドロップダウンからクリア ◎(その列のみ) ✕(残る) 特定の列だけ絞り込みを解除したいとき

フィルターが解除できない・うまく動かないときの対処法

続いては、フィルターが解除できない・操作してもうまく動かないときの原因と対処法を確認していきます。

「クリアボタンがグレーアウトしている」「ショートカットが効かない」といった場面でも、原因を知れば落ち着いて対処できます。

シートが保護されていてフィルター解除できない場合

フィルターの解除操作ができない最も多い原因が、シートの保護が有効になっていることです。

シートが保護されていると、フィルターの操作(絞り込みの変更・解除)が制限されている場合があります。

「校閲」タブ→「シート保護の解除」をクリックしてシートの保護を解除してから、改めてフィルター解除を試みてください。

パスワードが設定されている場合は入力が必要になるため、ファイルの管理者に確認しましょう。

【フィルター解除できないときのチェックリスト】

✅ シートが保護されていないか確認する(「校閲」→「シート保護の解除」)

✅ テーブル機能(ListObject)内のフィルターかどうか確認する

✅ ファイルが読み取り専用モードで開かれていないか確認する

✅ 複数シートをグループ選択していないか確認する

✅ VBAのShowAllDataでエラーが出る場合はFilterModeで条件チェックを行う

テーブル機能内のフィルターを解除する場合の注意点

Excelの「テーブル機能」(Ctrl+Tで作成するリスト形式のテーブル)にはフィルターが自動で設定されます。

通常のフィルターと同じように「クリア」や列ドロップダウンから絞り込みを解除できますが、テーブルのフィルターボタン(▼)はテーブルを解除しない限り消せないという仕様があります。

テーブルのフィルター機能をオフにしたい場合は「テーブルデザイン」タブ→「フィルターボタン」のチェックを外すことで非表示にできます。

テーブル自体を通常の範囲に変換したい場合は「テーブルデザイン」タブ→「範囲に変換」から対応します。

VBAのShowAllDataでエラーが出る場合の対処法

VBAで「ws.ShowAllData」を実行すると、フィルターが設定されていないシートや絞り込みがかかっていないシートでエラーが発生することがあります。

これを防ぐために、「ws.FilterMode」でフィルターが絞り込み中かどうかを事前に確認するコードを挟む必要があります。

先ほどのマクロコードで「If ws.FilterMode Then」という条件分岐を入れているのは、このエラーを防ぐためです。

AutoFilterModeとFilterModeは別物であるため、両方の確認を行うことでより安全に動作するマクロになります。

AutoFilterMode と FilterMode の違い

AutoFilterMode → フィルターボタン(▼)がシートに設定されているかどうか

FilterMode → 現在フィルターで絞り込みが行われているかどうか

ShowAllDataはFilterModeがTrueのとき(絞り込み中)のみ有効です。

AutoFilterModeのみTrueでFilterModeがFalseの場合にShowAllDataを実行するとエラーになります。

フィルター解除の応用テクニックと便利な活用方法

続いては、フィルター解除に関する応用テクニックと日常業務で役立つ活用方法を確認していきます。

基本操作に加えてこれらを知っておくと、Excelでのデータ管理がより快適になるでしょう。

🟢 Microsoft Excel – 全シートフィルター一括解除 ビフォーアフター

【解除前】複数シートに絞り込みあり

月次 🔽
週次 🔽
年次 ▼
月次シート:地域=東京で絞り込み中
週次シート:商品名=商品Aで絞り込み中
年次シート:絞り込みなし(▼のみ)

VBAマクロで
一括解除

【解除後】全シートの絞り込みがクリア
月次 ▼
週次 ▼
年次 ▼
✅ 月次シート:全データ表示(絞り込み解除)
✅ 週次シート:全データ表示(絞り込み解除)
✅ 年次シート:変化なし(▼は維持)
📌 VBAマクロを実行すると絞り込み中のシートのみShowAllDataが実行され、すべてのシートで全データが表示されます。フィルターボタン(▼)は残るため、必要に応じてすぐに再設定できます。

クイックアクセスツールバーに「クリア」を登録して素早く解除する

「データ」タブを開いて「クリア」をクリックするという手順を毎回行うのが面倒な場合は、クイックアクセスツールバーへの登録がおすすめです。

「データ」タブを開き、「クリア」ボタンを右クリックして「クイックアクセスツールバーに追加」をクリックするだけで登録できます。

登録後はツールバーのボタンにAlt+数字キーが割り当てられ、ワンアクションで絞り込み解除が実行できるようになります。

フィルター操作を頻繁に行う方には特に効果的な設定でしょう。

フィルター解除後にすべての行が表示されているか確認する方法

フィルターを解除した後、本当にすべての行が表示されているかを確認したい場面もあります。

最も手軽な確認方法は、行番号の連番が飛んでいないかを目視で確認することです。

フィルターで絞り込みがかかっている場合は行番号が青色で表示され、「1・3・5」のように飛び番になります。

解除後は行番号が黒色の連番に戻るため、この変化で確認できます。

また、ステータスバーに表示される件数(「○○レコード中○○個が見つかりました」という表示)でも絞り込みの有無を確認できます。

フィルター解除をマクロボタンに登録して1クリックで実行する方法

VBAマクロを毎回VBAエディタから実行するのが手間に感じる場合は、シート上にボタンを配置してクリックだけで実行できるようにする方法もあります。

「開発」タブ→「挿入」→「ボタン(フォームコントロール)」をシート上にドラッグして配置します。

配置後に「マクロの登録」ダイアログが開くので、作成した「全シートのフィルターをクリア」マクロを選択してOKをクリックします。

以降はボタンをクリックするだけで全シートのフィルター解除が実行されるようになり、Excel操作に不慣れな方でも簡単に使えるようになります。

【フィルター一括解除の総まとめ】

✅ 絞り込みのみ解除するには「データ」→「クリア」またはAlt→A→Cを使います。

✅ フィルター機能ごとオフにするにはCtrl+Shift+Lまたは「データ」→「フィルター」をもう一度クリックします。

✅ 全シートを一括解除するにはVBAの「ws.ShowAllData」をForEachループで実行する方法が最も効率的です。

✅ フィルター解除できない場合はシートの保護・テーブル機能・読み取り専用・グループ選択を確認します。

✅ クイックアクセスツールバーへの登録やマクロボタンの配置で、解除操作をさらに効率化できます。

まとめ

本記事では、Excelでフィルターを一括解除する方法について、基本操作・ショートカットキー・全シート対応のVBAマクロ・できないときの対処法・応用テクニックまで幅広く解説しました。

絞り込みのクリアとフィルター機能のオフは動作が異なるため、目的に合った方法を選ぶことが大切です。

複数シートにまたがるフィルターを一括解除したい場合は、VBAマクロで「ws.ShowAllData」をForEachループで実行する方法が最も効率的で確実です。

ショートカットキー(Alt→A→C・Ctrl+Shift+L)やクイックアクセスツールバーへの登録を活用すれば、日々のフィルター操作がさらにスムーズになるでしょう。

フィルター解除ができないときは、シートの保護・テーブル機能・読み取り専用モードを順番に確認することで、多くのケースに対応できます。

本記事の内容を参考に、Excelのフィルター操作を効率化してみてください。