Excelでリストをフィルタリングし、残りの非表示または表示されている行を削除するにはどうすればよいですか?
Excelで大規模なデータセットを扱う際、必要なデータのみを分析やレポートのために表示させるためにリストをフィルタリングすることがよくあります。しかし、データがフィルタリングされた後、不要になった行(フィルタリングによって非表示にされた行や、選択して表示させた行)を削除したい場合もあります。これにより、必要な情報のみが残ります。このようにフィルタリングされたデータを適切に管理することで、ワークシートを簡素化し、不要な情報を排除し、関連のある情報だけを保持することができます。本記事では、Excelのフィルタリングされたリストから非表示または表示されている行を削除するための信頼性の高い方法をいくつか紹介します。これにより、実際のニーズに応じてデータを効率的に整理できます。
アクティブなワークシートの非表示行をVBAコードで削除
すべての表示セルを選択してフィルタリングされたリストの表示行を削除
Kutools for Excelを使用してフィルタリングされたリストの非表示または表示行を簡単に削除
アクティブなワークシートの非表示行をVBAコードで削除
Excelでデータをフィルタリングすると、条件に一致しない行は非表示になりますが、ワークシート上には依然として存在しています。このような非表示行を一度にすべて迅速に削除したい場合があります。手動で1行ずつ削除するのは時間がかかり、特に大規模なデータセットの場合、エラーを引き起こす可能性があります。簡単なVBAマクロを使用すると、フィルタリングによって非表示にされた行やユーザーが手動で非表示にした行に関わらず、現在表示されている(フィルタリングされた)データのみを残して不要な行を一括で削除する効率的な方法です。
以下はその手順です:
1. フィルタリングされたリストが含まれるワークシートがアクティブ(選択済み)であることを確認します。
2. Alt + F11キーを同時に押して、Microsoft Visual Basic for Applications (VBA) エディタウィンドウを開きます。
3. VBAエディタで、上部のメニューにある「挿入」をクリックし、「モジュール」を選択します。以下のVBAコードをモジュールウィンドウにコピーして貼り付けます。
VBAコード: 非表示行の削除
Sub RemoveHiddenRows()
Dim xRow As Range
Dim xRg As Range
Dim xRows As Range
On Error Resume Next
Set xRows = Intersect(ActiveSheet.Range("A:A").EntireRow, ActiveSheet.UsedRange)
If xRows Is Nothing Then Exit Sub
For Each xRow In xRows.Columns(1).Cells
If xRow.EntireRow.Hidden Then
If xRg Is Nothing Then
Set xRg = xRow
Else
Set xRg = Union(xRg, xRow)
End If
End If
Next
If Not xRg Is Nothing Then
MsgBox xRg.Count & " hidden rows have been deleted", , "Kutools for Excel"
xRg.EntireRow.Delete
Else
MsgBox "No hidden rows found", , "Kutools for Excel"
End If
End Sub
4. コードを実行するには、F5キーを押すかツールバーの「実行」ボタンをクリックします。アクティブなシートに非表示の行がある場合、削除された非表示行の数を知らせるダイアログボックスが表示されます。OKをクリックして削除を完了します。スクリーンショットをご覧ください:
アクティブなワークシートに非表示行がない場合、それに応じて通知するメッセージが表示されます。
注意点とヒント:
- このマクロは、フィルタリングによって非表示にされた行や手動で非表示にされた行に関わらず、すべての非表示行を削除します。
- マクロを実行する前に正しいワークシートを選択したことを確認してください。VBAコードを実行した後は元に戻すことはできないため、バックアップを作成することをお勧めします。
- 削除される行以降の参照や計算式がある場合は、行の削除によって下流の計算や参照に影響を与える可能性があることに留意してください。

Kutools AIでExcelの魔法を解き放つ
- スマート実行: セル操作、データ分析、グラフ作成を簡単なコマンドで行います。
- カスタム数式: ワークフローを合理化するための独自の数式を生成します。
- VBAコーディング: 簡単にVBAコードを作成し実装します。
- 数式の解釈: 複雑な数式を簡単に理解できます。
- テキスト翻訳: スプレッドシート内の言語障壁を取り除きます。
すべての表示セルを選択してフィルタリングされたリストの表示行を削除
状況によっては、フィルタリング後に表示されている行のみを削除したい場合があります。例えば、隠された(フィルタリングされなかった)項目だけを残して、さらなる処理やレビューを行う場合などです。Excelの組み込み機能を使用することで、非表示行に影響を与えることなく、フィルタリングされたリストのすべての表示行を効率的に削除できます。これは、処理済みのデータや選択されたデータをクリアし、非表示のまま残しておく必要がある情報(完了したタスクやレビュー済みの記録など)を維持する際に便利です。
以下はその手順です:
1. 表示および非表示の行を含むフィルタリングされたリスト全体を選択します。
2. F5キー(またはCtrl+G)を押して「ジャンプ」ダイアログボックスを開き、左下隅にある「特殊」ボタンをクリックして「特殊な移動先」オプションを開きます。スクリーンショットをご覧ください:
3. 「特殊な移動先」ダイアログボックスで「表示セルのみ」を選択し、OKをクリックします。この操作により、選択範囲内の表示されている(フィルタリングされていない、またはその他の理由で非表示になっていない)行のみがハイライトされます。
4. 表示行が選択された状態で、ハイライトされたエリアのどこかを右クリックし、コンテキストメニューから「行の削除」を選択します。
これにより、すぐに表示行が削除され、フィルター条件のもとで非表示の行には影響を与えません。以前非表示にされていた行のみが残った状態にするための迅速な方法です。
重要な注意点:
- 最初に範囲を選択する際、現在非表示になっているものも含めて、意図したすべての行が含まれていることを確認してください。
- ファイルを保存して閉じた後は「行の削除」操作を元に戻すことはできません。元に戻せない変更を行う前にバックアップを作成することをお勧めします。
- この方法は、フィルタリングされたデータセットから表示行を時々削除するのに理想的ですが、複数の範囲や頻繁に行う作業には時間がかかる可能性があります。
Kutools for Excelを使用してフィルタリングされたリストの非表示または表示行を簡単に削除
上述の手動やVBAの方法は一般的に使用されていますが、頻繁に複雑または大規模なワークシートを管理する場合には十分に柔軟性や便利さを欠いている場合があります。このようなニーズをより効率的に解決するために、Kutools for Excelの「非表示(表示)行・列の削除」ユーティリティは、選択範囲、現在のワークシート、またはすべてのワークシートから非表示または表示行を迅速に削除するユーザーフレンドリーな方法を提供します。この方法は時間の節約につながり、特に大規模なデータセットを頻繁にクリーンナップしたり処理したりするユーザーにとって、手動操作によるミスのリスクを軽減します。
Kutools for Excelを使用する手順は以下の通りです:
1. 非表示または表示行を削除したいフィルタリングされた範囲を選択します。
2. Excelウィンドウの上部にある「Kutools」タブに移動し、「削除」→「非表示(表示)行・列の削除」を選択します。ガイダンスとして以下のスクリーンショットをご覧ください:
3. 表示された 非表示(表示)行・列の削除 ダイアログボックスで、以下のオプションを設定します:
– 検索対象 ドロップダウンメニューで、 選択した範囲内 (またはタスクに応じて他のオプションを選択します)
– 削除のタイプ セクションで、「 行
」をチェックします。 – 詳細なタイプ セクションで、「 表示行 」または「 非表示行
」を選択します(必要に応じて)。 – OKをクリックして確認し、実行します。
4. 実行後、確認ボックスに削除された行の正確な数が表示されます。OKをクリックしてプロセスを完了します。
使用上の注意とヒント:
- Kutoolsを使用すると、範囲を選択したり、ワークシート全体に一度に適用したりするのが容易になり、バッチ処理の効率が向上します。
- この方法は、特に大規模なシートでの手動選択に関連するエラーを減少させます。
- 多数のリストを扱っている場合や定期的なデータクリーニングが必要な場合、このソリューションは特に便利です。
- OKをクリックする前に、選択した範囲と操作内容を必ず確認してください。
このユーティリティを無料で試用したい場合(30日間)、こちらをクリックしてダウンロードし、上記の手順に従って操作を適用してください。
Kutools for Excelを使用してフィルタリングされたリストの非表示または表示行を削除
最高のオフィス業務効率化ツール
🤖 | Kutools AI Aide:データ分析を革新します。主な機能:Intelligent Execution|コード生成|カスタム数式の作成|データの分析とグラフの生成|Kutools Functionsの呼び出し…… |
人気の機能:重複の検索・ハイライト・重複をマーキング|空白行を削除|データを失わずに列またはセルを統合|丸める…… | |
スーパーLOOKUP:複数条件でのVLookup|複数値でのVLookup|複数シートの検索|ファジーマッチ…… | |
高度なドロップダウンリスト:ドロップダウンリストを素早く作成|連動ドロップダウンリスト|複数選択ドロップダウンリスト…… | |
列マネージャー:指定した数の列を追加 |列の移動 |非表示列の表示/非表示の切替| 範囲&列の比較…… | |
注目の機能:グリッドフォーカス|デザインビュー|強化された数式バー|ワークブック&ワークシートの管理|オートテキスト ライブラリ|日付ピッカー|データの統合 |セルの暗号化/復号化|リストで電子メールを送信|スーパーフィルター|特殊フィルタ(太字/斜体/取り消し線などをフィルター)…… | |
トップ15ツールセット:12 種類のテキストツール(テキストの追加、特定の文字を削除など)|50種類以上のグラフ(ガントチャートなど)|40種類以上の便利な数式(誕生日に基づいて年齢を計算するなど)|19 種類の挿入ツール(QRコードの挿入、パスから画像の挿入など)|12 種類の変換ツール(単語に変換する、通貨変換など)|7種の統合&分割ツール(高度な行のマージ、セルの分割など)|… その他多数 |
Kutools for ExcelでExcelスキルを強化し、これまでにない効率を体感しましょう。 Kutools for Excelは300以上の高度な機能で生産性向上と保存時間を実現します。最も必要な機能はこちらをクリック...
Office TabでOfficeにタブインターフェースを追加し、作業をもっと簡単に
- Word、Excel、PowerPointでタブによる編集・閲覧を実現。
- 新しいウィンドウを開かず、同じウィンドウの新しいタブで複数のドキュメントを開いたり作成できます。
- 生産性が50%向上し、毎日のマウスクリック数を何百回も削減!
全てのKutoolsアドインを一つのインストーラーで
Kutools for Officeスイートは、Excel、Word、Outlook、PowerPoint用アドインとOffice Tab Proをまとめて提供。Officeアプリを横断して働くチームに最適です。





- オールインワンスイート — Excel、Word、Outlook、PowerPoint用アドインとOffice Tab Proが含まれます
- 1つのインストーラー・1つのライセンス —— 数分でセットアップ完了(MSI対応)
- 一括管理でより効率的 —— Officeアプリ間で快適な生産性を発揮
- 30日間フル機能お試し —— 登録やクレジットカード不要
- コストパフォーマンス最適 —— 個別購入よりお得