メインコンテンツへスキップ

Excelでリストをフィルタリングし、残りの非表示または表示されている行を削除するにはどうすればよいですか?

Author: Siluvia Last Modified: 2025-07-21

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」をクリックして削除を完了します。以下のスクリーンショットをご覧ください:

A prompt box appears showing how many hidden rows were deleted

アクティブなワークシートに非表示の行がない場合、メッセージが表示され、それに応じて通知されます。

A prompt box appears notifying that there are no hidden rows

注意点とヒント:

  • このマクロは、フィルタリングによって隠された行や手動で隠された行に関係なく、すべての非表示行を削除します。
  • マクロを実行する前に正しいワークシートを選択したことを確認してください。VBAコードを実行した後は元に戻せませんので、バックアップを作成することをお勧めします。
  • 削除される行を超えて参照している数式がある場合、行の削除によって下流の計算や参照に影響を与える可能性があることに注意してください。
a screenshot of kutools for excel ai

Kutools AIでExcelの魔法を解き放つ

  • スマート実行: セル操作、データ分析、グラフ作成を簡単なコマンドで行います。
  • カスタム数式: ワークフローを合理化するための独自の数式を生成します。
  • VBAコーディング: 簡単にVBAコードを作成し実装します。
  • 数式の解釈: 複雑な数式を簡単に理解できます。
  • テキスト翻訳: スプレッドシート内の言語障壁を取り除きます。
AI搭載ツールでExcelの機能を強化しましょう。今すぐダウンロードして、かつてないほどの効率を体験してください!

すべての表示セルを選択する機能を使用してフィルタリングされたリストの表示行を削除する

特定のシナリオでは、フィルタリング後に表示されている行だけを削除し、隠された(フィルタリングアウトされた)エントリのみを残して、さらなる処理やレビューを行う必要がある場合があります。Excelの組み込み機能は、すべての表示行を効率的に削除し、隠された行には影響を与えずにフィルタリングされたリストを整理するのに役立ちます。これは、処理済みまたは選択済みのデータをクリアし、完成したタスクやレビュー済みの記録など、隠されたままのデータを保持したい場合に実用的です。

以下はその手順です:

1. 表示および非表示の行を含むフィルタリングされたリスト全体を選択します。

2. F5キー(またはCtrl+G)を押して「ジャンプ」ダイアログボックスを開きます。左下隅にある「特殊」ボタンをクリックして、「ジャンプ先の特殊設定」を開きます。スクリーンショットをご覧ください:

Click the Special button in the Go To dialog box

3. 「ジャンプ先の特殊設定」ダイアログで「表示セルのみ」を選択し、「OK」をクリックします。この操作により、選択範囲内の表示されている行(フィルタリングされたり、他の理由で隠されていない行)のみが強調表示されます。

Check the Visible cells only option

4. 表示されている行が選択された状態で、強調表示されたエリア内の任意の場所を右クリックし、コンテキストメニューから「行の削除」を選択します。

Click Delete Rows from the right-click menu

これにより、表示されている行が即座に削除され、フィルタリング条件の下で隠された行には影響を与えません。以前に隠されていた行のみを残してワークシートを簡素化するための迅速な方法です。

重要な注意点:

  • 最初に範囲を選択する際には注意が必要です。現在非表示になっている行も含めて、意図したすべての行が含まれていることを確認してください。
  • ファイルを保存して閉じた後、「行の削除」操作を取り消すことはできません。元に戻せない変更を行う前にバックアップを作成することをお勧めします。
  • この方法は、フィルタリングされたデータセットから表示行を時々削除する場合に理想的ですが、複数の範囲や頻繁なタスクには時間がかかることがあります。

Kutools for Excelを使用して、フィルタリングされたリストの非表示または表示されている行を簡単に削除する

上記の手動操作やVBAの方法は一般的に使用されていますが、頻繁に複雑または大規模なワークシートを管理する場合、柔軟性や利便性が十分でない場合があります。これらのニーズをより効率的に対処するために、Kutools for Excelの「非表示(表示)行と列の削除」ユーティリティは、選択範囲、現在のワークシート、またはすべてのワークシートから非表示または表示されている行を迅速に削除するためのユーザーフレンドリーな方法を提供します。この方法は時間を節約し、手動操作に起因するミスのリスクを軽減します。特に大規模なデータセットを頻繁にクリーニングおよび処理するユーザーにとって便利です。

Kutools for Excelは、300以上の高度な機能を提供し、複雑なタスクを簡素化し、創造性と効率を向上させます。 AI機能と統合され、Kutoolsは正確にタスクを自動化し、データ管理を容易にします。Kutools for Excelの詳細情報...無料トライアル...

以下は、このタスクのためにKutools for Excelを使用する方法です:

1. 非表示または表示されている行を削除したいフィルタリングされた範囲を選択します。

2. Excelウィンドウの上部にある「Kutools」タブに移動し、「削除」「非表示(表示)行と列の削除」を選択します。以下のスクリーンショットを参考にしてください:

Click Delete Hidden (Visible) Rows & Columns feature of Kutools

3. 非表示(表示)行と列の削除 ポップアップするダイアログボックスで、オプションを設定します:
検索対象 ドロップダウンで 選択した範囲内 (またはタスクに応じて他のオプションを選択)
削除のタイプ セクションで
をチェックします。 詳細なタイプ セクションで 表示行 または 非表示行
OK をクリックして確認および実行します。

Set options in the dialog box

4. 実行後、確認ボックスに削除された行数が正確に表示されます。「OK」をクリックしてプロセスを終了します。

使用上の注意点とヒント:

  • Kutoolsを使用すると、範囲を選択したり、ワークシート全体に一度に適用したりすることが容易になり、一括処理の効率が向上します。
  • この方法は、特に大きなシートでの手動選択に関連するエラーを減少させます。
  • 多数のリストを扱っている場合や定期的なデータクリーニングが必要な場合、このソリューションは特に便利です。
  • 「OK」をクリックする前に、常に選択した範囲と操作の選択を確認してください。

  このユーティリティを無料で試用したい場合(30日間)、こちらをクリックしてダウンロードし、上記の手順に従って操作を適用してください。


Kutools for Excelを使用して、フィルタリングされたリストの非表示または表示されている行を削除する

 

最高のオフィス生産性ツール

🤖 Kutools AI アシスタント: データ分析を革命化する: インテリジェント実行   |  コード生成  |  カスタム数式の作成  |  データを分析しグラフを生成  |  拡張機能を呼び出す
人気の機能: 重複を見つけてハイライトまたはマーキング   |  空白行を削除   |  データを失わずに列またはセルを統合   |   丸める ...
スーパーLOOKUP: 複数条件のVLookup    複数値のVLookup  |   複数シートの検索   |   ファジーマッチ ....
高度なドロップダウンリスト: ドロップダウンリストを迅速に作成   |  依存ドロップダウンリスト   |  マルチセレクトドロップダウンリスト ....
列管理: 特定の数の列を追加  |  列を移動  |  非表示列の可視ステータスを切り替え  |  範囲と列を比較 ...
注目の機能: グリッドフォーカス   |  デザインビュー   |   強化された数式バー    ワークブック & ワークシート管理   |  オートテキスト ライブラリ (Auto Text)   |  日付ピッカー   |  データの統合   |  セルの暗号化/復号化    リストで電子メールを送信   |  スーパーフィルター   |   特殊フィルタ (太字/斜体/取り消し線をフィルタリング...) ...
トップ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%向上させ、毎日数百回のマウスクリックを減らします!