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 でフィルター済みリストの非表示または表示行を削除
最高の Office 業務効率化ツール
| 🤖 | KUTOOLS AI アシスタント:次に基づいてデータ分析を革新します:インテリジェント実行 | コード生成| カスタム数式作成 | データ分析とチャート生成| 拡張機能呼び出し… |
| 人気の機能:検索・ハイライト、または重複をマーキング | 空白行を削除する | データを失うことなく列の結合またはセルを | 数式を使用しない四捨五入... | |
| スーパー LOOKUP:複数条件 VLookup | 複数値 VLookup | 複数シート間 VLookup | ファジーマッチ.... | |
| 高度なドロップダウンリスト:ドロップダウンリストをすばやく作成 | 連動型ドロップダウンリスト | 複数選択可能なドロップダウンリスト.... | |
| 列マネージャー:指定した数の列を追加|列の移動|非表示列の表示状態を切り替え|範囲および列の比較... | |
| 注目の機能:グリッドフォーカス | デザインビュー |強化された数式バー | ワークブックとシートマネージャー | リソースライブラリ(オートテキスト)| 日付ピッカー | ワークシートの統合 | 暗号化/セルの復号化 | リストからメール送信 | スーパーフィルター | 特殊フィルタ(太字のフォントを持つセルをフィルタリング/斜体/取り消し線。。。) 。。。 | |
| トップ15 ツールセット:12 テキストツール(テキストの追加、特定の文字を削除、...)| 50+チャートタイプ(ガントチャート、...)| 40+実用的関数(誕生日に基づいて年齢を計算します、...)| 19 挿入ツール(QR コードを挿入、パスから画像を挿入、...)| 12 変換ツール(単語に変換する、為替レートの変換、...)| 7 結合と分割ツール(高度な行のマージ、セルの分割、...)|さらに多数 |
Kutools for Excel でExcel スキルを強化し、これまでにない効率を体験しましょう。Kutools for Excel は、生産性を高め、時間を大幅に節約できる高度な機能を300 以上提供します。最も必要な機能を今すぐ入手するにはこちらをクリック。。。
Office Tab は Office にタブインターフェースをもたらし、作業を大幅に簡単にします
- Word、Excel、PowerPoint でタブを使った編集と閲覧を有効にします。Publisher、Access、Visio、Project でもご利用いただけます。
- 複数のドキュメントを、新しいウィンドウではなく、同じウィンドウ内の新しいタブで開いたり作成したりできます。
- 日々の生産性を50%も向上させ、毎日数百回ものマウスクリックを削減します!
すべてのKutools アドインが、たった1 つのインストーラーで完結。
Kutools for Officeスイートには、Excel ・Word ・Outlook ・PowerPoint 用のアドインと Office Tab Pro が含まれており、複数の Office アプリを横断して作業するチームに最適です。
- オールインワンスイート— Excel、Word、Outlook、PowerPoint 用アドイン+Office Tab Pro
- インストーラー1 つ、ライセンス1 つ— 数分でセットアップ可能(MSI 対応)
- 連携してさらにパワーアップ— Office アプリ全体で生産性が向上
- 30 日間のフル機能トライアル— 登録不要、クレジットカード不要
- 最高のお得感— 個別アドイン購入よりお得