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

セルの値に基づいてExcelで行を削除する – 簡単なチュートリアル

Author: Xiaoyang Last Modified: 2025-08-06

小さなスプレッドシートであろうと大規模なデータセットであろうと、セルの値に基づいて行を削除する方法を知ることは、時間と労力を節約できます。このプロセスは、フィルター機能、検索と置換ツール、並べ替え機能、さらには高度なテクニックを使用して実行できます。このガイドの終わりまでに、不要な行を効率的に削除し、データが分析ニーズに合致して整理された状態を維持するための知識が身につきます。

例えば、名前列に「Jener」という名前が含まれるすべての行を削除したい場合、どのように進めればよいでしょうか?

 Remove rows based on cell value

セルの値に基づいて行全体を削除する

並べ替え機能を使用して選択範囲内の行をセルの値に基づいて削除する


セルの値に基づいて行全体を削除する

Excelでは、特定のセル値に基づいて行を削除する方法がいくつか提供されています。このセクションでは、フィルターや検索と置換、Kutoolsなどの基本的なExcel機能から、VBAを使用した高度なテクニックまで、さまざまな方法をカバーします。初心者でも上級者でも、自分のスキルレベルやニーズに合った方法を見つけることができるでしょう。

📝 注釈: 以下の方法で行を削除すると、その行内のすべてのデータ(他のセルの内容も含む)が削除されます。データの損失を防ぐために、削除前にデータセットを別のワークシートに複製することをお勧めします。

フィルター機能を使用してセルの値に基づいて行全体を削除する

通常、フィルター機能を使用して特定の条件を満たす行を表示し、その後一度にその行を削除することができます。

ステップ 1: 不要な行をフィルターするフィルター機能を適用する

  1. 削除したい行のデータ範囲を選択し、「データ」>「フィルター」をクリックします。スクリーンショットをご覧ください:
     click Data > Filter
  2. これで、各列のヘッダーにドロップダウン矢印が表示されます。削除したい行を含む列のドロップダウン矢印をクリックします。例えば、「Jener」という名前を含む行を削除したい場合、「名前」列の矢印をクリックします。
  3. ドロップダウンメニューで、「すべて選択」のチェックを外してすべての選択を解除し、「Jener」の横にあるボックスだけをチェックするか、検索ボックスに「Jener」と手動で入力して素早く見つけます。
    check only the value to filter out
  4. そして、「OK」ボタンをクリックしてフィルターを適用します。「Jener」を含む行のみが表示されます。スクリーンショットをご覧ください:
    only the rows that contain the specific value are displayed

ステップ 2: フィルターされた行を削除する

表示されている行を選択し、右クリックしてコンテキストメニューから「行の削除」を選択します。これにより、選択されたすべての行が削除されます。
 right-click on one of the selected rows and choose Delete Row

ステップ 3: フィルターをクリアする

次に、「データ」>「フィルター」を再度クリックします。これによりフィルターが解除され、削除された行以外のすべてのレコードが表示されます。
click on the Data > Filter again to clear the filter

💡 ヒント:
  • 「Jener」というテキストを含む行を削除するためにフィルターメソッドを適用する方法と同様に、次のスクリーンショットに示すように、数値または日付条件に基づいて行を削除するためにも利用できます:
    数値フィルター条件:
    Number filter conditions in Filter function

    日付フィルター条件:
     Date filter conditions in Filter function
  • また、フィルター機能を使用して特定の背景色を持つすべての行をフィルターして削除することもできます。スクリーンショットをご覧ください:
    filter and delete all rows that contain certain background color
  • フィルター機能を使用して複数の基準に基づいて必要のない内容をフィルターして削除することもできます。例えば、営業担当者が「Jener」で売上が7000ドルを超えるすべての行を削除したい場合、まず「Jener」という名前で行をフィルターし、次に売上が7000を超えるものをフィルターします。
 

Kutools AI アシスタントを使用してセルの値に基づいて行全体を削除する

Kutools for Excelは、Excelでの複雑なタスクを簡素化するために設計された300以上の高度な機能を含む包括的なアドインです。その機能の一つであるKutools AI アシスタントは、特定の基準に基づいて行をフィルタリングおよび削除するなどのタスクを自動化するのに役立ちます。

📝 注釈: Kutools for ExcelのこのKutools AI アシスタントを使用するには、Kutools for Excelをダウンロードしてインストールしてください。

Kutools for Excelをインストール後、「Kutools AI」>「AI アシスタント」をクリックして「Kutools AI アシスタント」ペインを開きます:

  1. データ範囲を選択し、チャットボックスに要求を入力して「送信」ボタンをクリックするかEnterキーを押して質問を送信します。
    「選択範囲内で名前列に「Jener」という名前が含まれる場合、その行を削除する」
  2. 分析後、「実行」ボタンをクリックして実行します。Kutools AI アシスタントはAIを使用してリクエストを処理し、指定された行を直接Excelで削除します。
💡 ヒント:
  • 複数の基準に基づいて行を削除するには、要求を適切に調整するだけです。例えば、「選択範囲内で名前列に「Jener」または「Kevin」が含まれる行を削除する」や「選択範囲内で名前列に「Jener」が含まれていて総売上が7000を超える行を削除する」などのコマンドを使用します。
  • この方法は元に戻す機能をサポートしていません。ただし、元のデータを復元したい場合は、「不満足」をクリックして変更を取り消すことができます。
Kutools for Excelは、300以上の高度な機能を提供し、複雑なタスクを簡素化し、創造性と効率を向上させます。 AI機能と統合され、Kutoolsは正確にタスクを自動化し、データ管理を容易にします。Kutools for Excelの詳細情報...無料トライアル...
 

検索と置換機能を使用してセルの値に基づいて行全体を削除する

Excelの検索と置換機能を使用して特定のセル値に基づいて行全体を削除するのは、データを整理する際に非常に効果的な簡単な方法です。以下の手順に従ってください:

ステップ 1: 特定の値を選択するために検索と置換機能を適用する

  1. 特定のセル値に基づいて行を削除したい列データを選択し、Ctrl + Fキーを同時に押して「検索と置換」ダイアログボックスを開きます。
  2. 「検索と置換」ダイアログボックスで、特定のセル値(今回の例では「Jener」)を「検索内容」ボックスに入力し、「すべて検索」ボタンをクリックします。スクリーンショットをご覧ください:
    type the certain cell value in the find what box
  3. 「検索と置換」ダイアログボックスの下部にあるすべての検索結果を選択し、このダイアログボックスを閉じます。(検索結果の1つを選択し、Ctrl + Aキーを押してすべての検索結果を選択できます。)そして、特定の値を含むすべてのセルが選択されます。その後、このダイアログボックスを閉じます。スクリーンショットをご覧ください:
     press Ctrl + A keys to select all found results

ステップ 2: 選択された値に基づいて行を削除する

  1. 選択されたセルがまだ選択されている状態で、右クリックしてコンテキストメニューから「削除」を選択します。
  2. 「削除」ダイアログで「行全体」を選択し、OKをクリックして指定された値を含むすべての行を削除します。
     delete the Rows based on the selected value
 

VBAコードを使用してセルの値に基づいて行全体を削除する

ExcelでVBA(Visual Basic for Applications)を使用してセル値に基づいて行を削除すると、特に大規模なデータセットの場合、タスクを自動化でき、効率的になります。

ステップ 1: VBAモジュールエディタを開き、コードをコピーする

  1. Alt + F11キーを押して「Microsoft Visual Basic for Applications」ウィンドウを開きます。
  2. 開いたウィンドウで、「挿入」>「モジュール」をクリックして新しい空白モジュールを作成します。
  3. 次に、以下のコードを空白モジュールにコピーして貼り付けます。
    Sub DeleteRowsBasedOnCellValue()
    'Updateby Extendoffice
        Dim ws As Worksheet
        Set ws = ActiveSheet
        Dim columnRange As Range
        On Error Resume Next
        Set columnRange = Application.InputBox("Select the column range to check:", "Kutools for Excel", Type:=8)
        On Error GoTo 0
        If columnRange Is Nothing Then Exit Sub
        Dim lastRow As Long
        lastRow = ws.Cells(ws.Rows.Count, columnRange.Column).End(xlUp).Row
        Dim criteria As String
        criteria = Application.InputBox("Enter the value to delete rows for:", "Kutools for Excel", Type:=2)
        If criteria = "" Then Exit Sub
        Dim i As Long
        For i = lastRow To 1 Step -1
            If ws.Cells(i, columnRange.Column).Value = criteria Then
                ws.Rows(i).Delete
            End If
        Next i
    End Sub
    

ステップ 2: コードを実行する

  1. F5キーを押してコードを実行します。ポップアップするダイアログボックスで、特定の値に基づいて行を削除する列を選択し、OKボタンをクリックします。
     select the column to remove rows based on the certain value
  2. 次のダイアログボックスで、削除する行の基準となる特定の値を入力し、OKボタンをクリックします。スクリーンショットをご覧ください:
     type the certain value to remove rows based on

結果:

そして、指定された値に基づいて行全体がすでに削除されていることが確認できます。

📝 注釈: このVBAコードの方法は元に戻す機能をサポートしていないため、使用前に操作が期待通りに行われることを確認してください。さらに、意図しない変更やデータ損失を防ぐために、データのバックアップを取ることをお勧めします。

並べ替え機能を使用して選択範囲内の行をセルの値に基づいて削除する

上記のすべての方法は行全体を削除しますが、これは制限になることがあります。例えば、これらの方法を使用すると、データセットの右側にあるすべてのデータが削除されます。データセット内の特定のレコードのみを削除しつつ、残りのデータを保持したい場合、代替のアプローチが必要です。

ステップ 1: データ用のヘルパーカラムを作成する

順序を追跡するのに役立つ新しい列を作成します。データの隣に列を挿入し、1、2、3…のような連番で埋める必要があります。スクリーンショットをご覧ください:
Create a serial numbers helper column for the data

ステップ 2: 特定の列に基づいてデータを並べ替える

  1. 削除したい行のデータ列を選択し、「データ」>「AからZへ」または「ZからAへ」をクリックします。ソート警告ダイアログボックスがポップアップしたら、「選択範囲を拡張する」を選択し、「並べ替え」ボタンをクリックします。スクリーンショットをご覧ください:
     select Expand the selection in the dialog box
  2. これで、同じ値を持つ行がグループ化され、簡単に識別して選択できるようになります。スクリーンショットをご覧ください:
     rows with the same values will be grouped together

ステップ 3: 並べ替えた行を削除する

  1. 削除したいレコードのグループを選択し、右クリックしてコンテキストメニューから「削除」を選択します。「削除」ダイアログボックスで「セルを上に移動」オプションを選択し、OKボタンをクリックします。スクリーンショットをご覧ください:
     Delete the sorted rows
  2. 名前が「Jener」のレコードのみが削除され、行全体は削除されません。したがって、データセットの右側または左側のデータは影響を受けません。

ステップ 4: 元のデータの順序を復元するために並べ替え機能を適用する

ヘルパーカラムのヘッダーをクリックし、リボンの「データ」に移動して「AからZへ」を選択し、ヘルパーカラムの順序に基づいてデータを整理します。これにより、選択範囲内のデータが元の順序に戻ります。

ステップ 5: ヘルパーカラムを削除する

最後に、ワークシートを整理するために必要に応じてヘルパーカラムを削除します。


この記事では、Excelでセル値に基づいて行を削除するいくつかの方法を探りました。お好みの方法を選んでください。さらに多くのExcelのヒントやテクニックに興味がある場合、当サイトには数千のチュートリアルがありますので、 こちらをクリックしてアクセスしてください。ご閲覧いただきありがとうございます。今後も役立つ情報を提供できることを楽しみにしています!


関連記事:

  • Excelで空白セルを簡単に削除する – 完全なチュートリアル
  • Excelで空白セルを削除することは、データを整理しやすくし、分析、理解、提示を容易にする一般的な作業です。空白セルはデータ分析を妨げ、数式でエラーを引き起こし、データセットを不完全または非専門的に見せる可能性があります。このチュートリアルでは、Go To Special機能、数式、フィルター機能など、Excelで空白セルを効率的に削除または管理するいくつかの方法を探ります。各方法は異なるニーズやシナリオに対応しているため、最適な方法を選ぶことができます。
  • 背景色に基づいて行を削除する
  • 背景色に基づいて行全体を削除するにはどうすればよいですか?この例では、次のスクリーンショットに示すように、青い背景色で塗りつぶされたセルを持つすべての行を削除する必要があります。この記事では、Excelでこのタスクを達成するためのいくつかのコードを紹介します。
  • 他のすべての行を削除する
  • Excelで他のすべての行または列を迅速に削除したい場合、主なポイントは、最初に他のすべての行または列を迅速に選択し、それらに削除操作を適用する方法です。この記事では、最初に他のすべての行または列を選択し、それらを迅速に削除するためのトリッキーな方法をいくつか紹介します。