Note: The other languages of the website are Google-translated. Back to English

Excelのセル値に基づいて行を削除するにはどうすればよいですか?

Excelでセル値に基づいて複数の行をすばやく削除または削除するには、最初に特定のセル値を含む行全体を選択してから、それらを削除する必要がある場合があります。 セルの値に基づいて行を削除するのにVBAコードを使用する簡単な方法はないようです。 ここにあなたを助けるためのいくつかの簡単なトリックがあります。


検索と置換機能を使用して、セル値に基づいて行を削除します

Excelでは、強力な検索と置換機能を適用して、特定のセル値に基づいて行を簡単に削除できます。 次のようにしてください。

1。 特定のセル値に基づいて行を削除する範囲を選択し、を押して[検索と置換]ダイアログボックスを開きます。 Ctrl + F キーを同時に押す。

2。 [検索と置換]ダイアログボックスで、特定のセル値を入力してください(この場合、 ソー)を Find what ボックスをクリックし、 Find All ボタン。 以下の最初のスクリーンショットを参照してください。

3。 [検索と置換]ダイアログボックスの下部にあるすべての検索結果を選択し、このダイアログボックスを閉じます。 ((注意:検索結果のいずれかを選択してから Ctrl + A 見つかったすべての結果を選択するためのキー。 上記のXNUMX番目のスクリーンショットを参照してください。)
そして、特定の値を含むすべてのセルが選択されていることがわかります。

4。 選択したセルを右クリックして、 Delete 右クリックメニューから。 そして、 Entire row ポップアップする[削除]ダイアログボックスのオプションをクリックし、 OK ボタン。 これで、特定の値を含むすべてのセルが削除されたことがわかります。 以下のスクリーンショットを参照してください。

そして、すでに特定の値に基づいて行全体が削除されています。


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

次のVBAコードを使用すると、特定のセル値を持つ行をすばやく削除できます。次の手順に従ってください。

1。 プレス Alt + F11 同時に開くキー Microsoft Visual Basic for applications 窓、

2に設定します。 OK をクリックします。 Insert > Module、および次のコードをモジュールに入力します。

VBA:セルの値に基づいて行全体を削除します

Sub DeleteRows()
'Updateby20211217
Dim rng As Range
Dim InputRng As Range
Dim DeleteRng As Range
Dim DeleteStr As String
Dim xTitleId As String
Dim xArr
Dim xF As Integer
Dim xWSh As Worksheet
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set rng = Application.Selection
Set InputRng = Application.InputBox("Range :", xTitleId, rng.Address, Type:=8)
If InputRng Is Nothing Then Exit Sub
DeleteStr = Application.InputBox("Delete Text", xTitleId, Type:=2)
Set xWSh = InputRng.Worksheet
For Each rng In InputRng
    If rng.Value = DeleteStr Then
        If DeleteRng Is Nothing Then
            Set DeleteRng = rng
        Else
            Set DeleteRng = Application.Union(DeleteRng, rng)
            Set DeleteRng = DeleteRng.EntireRow
        End If
    End If
Next
xArr = Split(DeleteRng.AddressLocal, ",")
DeleteRng.Select
DeleteRng.Delete
For xF = UBound(xArr) To 0 Step -1
    Set DeleteRng = xWSh.Range(xArr(xF))
    DeleteRng.Delete
Next
End Sub

3。 次に、 Run ボタンを押してコードを実行します。

4。 ポップアップダイアログボックスで、特定の値に基づいて行を削除する範囲を選択し、[ OK ボタン。

5。 別のダイアログボックスで、行を削除する特定の値を入力して、 OK ボタン。 スクリーンショットを参照してください:

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


Kutools for Excelを使用して、XNUMXつまたはXNUMXつのセル値に基づいて行を削除します

あなたがインストールしている場合 Kutools for Excel、 その Select Specific Cells この機能は、特定の値を持つ行をすばやく削除するのに役立ちます。 次のようにしてください。

Kutools for Excel - Excel 用の 300 以上の便利なツールが含まれています。 全機能無料トライアル 30-day、クレジットカード不要! 今すぐ入手

1。 特定の値に基づいて行を削除する範囲を選択し、をクリックします Kutools > Select > Select Specific Cells。 スクリーンショットを参照してください:

2。 [指定したセルを選択]ダイアログボックスを開いて、チェックしてください。 Entire row オプション、選択 Contains from Specific type ドロップダウンリストで、指定した値を右のボックスに入力し、[ Ok ボタン(上のスクリーンショットを参照)。
この機能を適用すると、ダイアログボックスが表示され、指定した基準に基づいて検出されたセルの数が表示されます。 クリックしてください OK ボタンを押して閉じます。

3。 これで、特定の値を持つ行全体が選択されます。 選択した行を右クリックして、 Delete 右クリックメニューから。 以下のスクリーンショットを参照してください。

注意:これ Select Specific Cells 機能は、XNUMXつまたはXNUMXつの特定の値で行を削除することをサポートします。 指定されたXNUMXつの値に基づいて行を削除するには、で別の値を指定してください Specific type 次のスクリーンショットのように、[特定のセルを選択]ダイアログボックスのセクション:

Kutools for Excel - Excel 用の 300 以上の便利なツールが含まれています。 全機能無料トライアル 30-day、クレジットカード不要! 今すぐ入手


Kutools forExcelで複数のセル値に基づいて行を削除する

場合によっては、Excelの別の列/リストから複数のセル値に基づいて行を削除する必要があります。 ここで紹介します Kutools for Excel's Select Same & Different Cells 簡単にすばやく解決する機能。

Kutools for Excel - Excel 用の 300 以上の便利なツールが含まれています。 全機能無料トライアル 30-day、クレジットカード不要! 今すぐ入手

1に設定します。 OK をクリックします。 Kutools > Select > Select Same & Different Cells [同じセルと異なるセルを選択]ダイアログボックスを開きます。

2。 オープニングで Select Same & Different Cells ダイアログボックスで、次のようにしてください(スクリーンショットを参照)。

で(1) Find values in ボックスで、特定の値が表示される列を選択してください。
で(2) According to ボックスで、行を削除する複数の値を持つ列/リストを選択してください。
で(3) Based on セクション、チェックしてください Each row オプション;
で(4) Find セクション、チェックしてください Same Values オプション;
(5)確認してください Select entire rows ダイアログボックスを開く下部にあるオプション。
注意:指定したXNUMXつの列に同じヘッダーが含まれている場合は、 My data has headers オプションを選択します。

3。 クリック Ok このユーティリティを適用するボタン。 次に、ダイアログボックスが表示され、選択された行数が表示されます。 クリックするだけです OK ボタンを押して閉じます。

そして、指定されたリストの中の値を含むすべての行が選択されました。

4に設定します。 OK をクリックします。 Home > Delete > Delete Sheet Rows 選択したすべての行を削除します。


デモ:ExcelのXNUMXつまたは複数のセル値に基づいて行を削除します


Kutools for Excel には、Excel 用の 300 以上の便利なツールが含まれており、30 日間制限なく無料で試すことができます。 今すぐダウンロードして無料トライアル!

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

Kutools for Excelはほとんどの問題を解決し、生産性を80%向上させます

  • 再利用: すばやく挿入 複雑な数式、チャート および以前に使用したものすべて。 セルを暗号化する パスワード付き。 メーリングリストを作成する そしてメールを送る...
  • スーパーフォーミュラバー (複数行のテキストと数式を簡単に編集できます); 読書レイアウト (多数のセルを簡単に読み取って編集する); フィルター範囲に貼り付け...
  • セル/行/列をマージする データを失うことなく; 分割セルコンテンツ; 重複する行/列を組み合わせる...重複セルを防止します。 範囲を比較する...
  • [複製]または[一意]を選択します 行; 空白行を選択 (すべてのセルは空です); スーパーファインドとファジーファインド 多くのワークブックで; ランダム選択...
  • 正確なコピー 数式参照を変更せずに複数のセル。 参照の自動作成 複数のシートに; 箇条書きを挿入、チェックボックスなど...
  • テキストを抽出、テキストの追加、位置による削除、 スペースを削除する; ページング小計の作成と印刷。 セルの内容とコメントを変換する...
  • スーパーフィルター (フィルタースキームを保存して他のシートに適用します); 高度な並べ替え 月/週/日、頻度など。 特殊フィルター 太字、斜体...
  • ワークブックとワークシートを組み合わせる; キー列に基づいてテーブルをマージします。 データを複数のシートに分割; xls、xlsx、PDFをバッチ変換...
  • 300 以上の強力な機能. Office / Excel 2007-2021 および 365 をサポートします。すべての言語をサポートします。 企業や組織に簡単に導入できます。 フル機能の 30 日間無料トライアル。 60日間の返金保証。
kteタブ201905

Officeタブは、タブ付きのインターフェイスをOfficeにもたらし、作​​業をはるかに簡単にします

  • Word、Excel、PowerPointでタブ付きの編集と読み取りを有効にする、パブリッシャー、アクセス、Visioおよびプロジェクト。
  • 新しいウィンドウではなく、同じウィンドウの新しいタブで複数のドキュメントを開いて作成します。
  • 生産性を 50% 向上させ、毎日何百回もマウス クリックを減らすことができます!
officetab下部
コメントを並べ替える
コメント (39)
まだ評価はありません。 最初に評価してください!
このコメントは、サイトのモデレーターによって最小化されました
素晴らしい! それはおやつでした、私はそれを私が必要とするものに合うように少し変えましたが、純粋に天才的です。 ああVBAバージョン。
このコメントは、サイトのモデレーターによって最小化されました
If(cell.Value)= "Apple"を変更して複数の値を含める方法はありますか?
このコメントは、サイトのモデレーターによって最小化されました
ボビー、これを試してみてください。必要なものが得られるはずです。If(cell.Value)= "Apple" OR(cell.Value)= "Monday"
このコメントは、サイトのモデレーターによって最小化されました
とにかく、値が特定の値に対して>または=であるかどうかにかかわらず、値に値を認識させることはできますか?
このコメントは、サイトのモデレーターによって最小化されました
ねえ-スクリプトをどうもありがとう。 ワイルドカードを使用して、特定のアイテムではなく、セル内で一致するものを選択できるかどうか疑問に思いました。 **ワイルドカードを使用してみましたが、何も実行されないようです。 これが私が持っているものです:Sub Delete_Rows()Dim rng As Range、cell As Range、del As Range Set rng = Intersect(Range( "B6:B20")、ActiveSheet.UsedRange)For Each cell In rng If cell.Value Like "* WORDTODELETE *" _ Then If del Is Nothing Then Set del = cell Else:Set del = Union(del、cell)End If End If Next cell On Error Resume Next del.EntireRow.Delete End Sub
このコメントは、サイトのモデレーターによって最小化されました
心からの感謝-マーケティング担当者がコードを書き込もうとするときはいつも面白いです、そしてこの情報はとても役に立ちました。 コードを複数の列にまたがらせることができませんでした(「AA2:AA3000」は機能しますが、「AB2:AB3000」は機能しますが、「AA2:AB3000」は機能しません。地球を破壊するKaboomはありません。何もしません。Iいくつかのマクロを順番に実行することで(自然に)解決しましたが、おそらくもっとエレガントな方法があります。ジム(ニューヨーク州メルビル)、ありがとうございました。
このコメントは、サイトのモデレーターによって最小化されました
次のようになります。実行時エラー「13」:タイプの不一致デバッグでは、If(cell.Value)= "FALSE"_Thenセクションが強調表示されます。 私はMVBで完全に迷子になっています、どんな助けもいただければ幸いです。
このコメントは、サイトのモデレーターによって最小化されました
以下のコードを入力して、リンゴを含むすべての行を削除するとしますが、それが完了したら続行して、バナナを含むすべての行を削除しますか? コードを複製しようとしましたが、アップルの後で停止するようです。 ありがとう。 Sub Delete_Rows()Dim rng As Range、cell As Range、del As Range Set rng = Intersect(Range( "A1:C20")、ActiveSheet.UsedRange)For Each cell In rng If(cell.Value)= "Apple" _ Then If del Is Nothing Then Set del = cell Else:Set del = Union(del、cell)End If End If Next cell On Error Resume Next del.EntireRow.Delete End Sub
このコメントは、サイトのモデレーターによって最小化されました
ありがとうと言いたかっただけです。 これは魅力のように機能しました。
このコメントは、サイトのモデレーターによって最小化されました
間違いなくすごい! 共有してくれてありがとう!!!
このコメントは、サイトのモデレーターによって最小化されました
ありがとう、これは素晴らしいです! 簡単なコメントですが、Excel 2010で検索と置換の機能を試しました。見つかったすべての結果を選択するには、Alt+Aの代わりにCtrl+Aを使用する必要がありました。
このコメントは、サイトのモデレーターによって最小化されました
こんにちは、「Apple」を含まない行を削除する最も簡単な方法は何ですか? ありがとう
このコメントは、サイトのモデレーターによって最小化されました
こんにちは、OR例外を除いて、行を削除するためにそれを書く方法はありますか? つまり、重複している行を削除しますが、特定の値は無視します。 問題の列に空白のb/cが含まれている場合を除いて、重複を削除したいのですが、その列にはまだ有効なデータがありません。 そのまま実行しましたが、問題の列が空白の行を削除してしまったため、そのままでは使用できません。 ありがとう
このコメントは、サイトのモデレーターによって最小化されました
VBスクリプトをありがとうございます。 これを試すのが待ちきれません。 質問:列を削除する前に削除対象としてマークを付けたり、ブックの別のタブにコピーしたりする方法はありますか? さらに、このスクリプトを一度に複数のワークブック/ファイルで実行する方法はありますか?
このコメントは、サイトのモデレーターによって最小化されました
ありがとう..それは私を大いに助けます...
このコメントは、サイトのモデレーターによって最小化されました
column1 = "Apple" AND column3="green"であるすべての行を削除したいと思います。 お願いします?
このコメントは、サイトのモデレーターによって最小化されました
マクロなどを使用してこれを行う方法はわかりませんが、その仕事をうまく行う2つのオプションは、一方の列が「リンゴ」でもう一方が「緑」であることをテストする追加の列を追加してから、単純な「はい」または「いいえ」の値を示します。 上記のオプションのいずれかを使用して値「yes」を検索し、XNUMXつの別々の値の代わりにそれに基づいて行を削除します。
このコメントは、サイトのモデレーターによって最小化されました
XNUMXつのドキュメントにストアのリストがあります。 数千行を返すレポートがあります。 ストア番号は常に列Aにあります。レポートを検索し、ストア番号を持つすべての列をストアリストから削除するコード/マクロはありますか。 vlookupを考えて「DoWhile」が必要です。
このコメントは、サイトのモデレーターによって最小化されました
こんにちは、VBAコードをありがとうございます。 一つ質問があります。 同時に削除する複数のセル値を選択できるようにコードを作成することは可能ですか? たとえば、AppleとEmilyを同時に選択して削除しますか? どうぞよろしくお願いいたします。ご返信をお待ちしております。 ジョアンK
このコメントは、サイトのモデレーターによって最小化されました
範囲A3:D3000を指定するにはどうすればよいですか(つまり、ユーザーに範囲を選択させたくない)? 削除文字列をセル参照にするにはどうすればよいですか。 G1?
このコメントは、サイトのモデレーターによって最小化されました
3つの列を比較してから削除することは可能ですか? セルA=xおよびセルB=yの場合、範囲A3000:DXNUMXにあり、行を削除しますか?
このコメントは、サイトのモデレーターによって最小化されました
なんてすばらしい。 どうもありがとうございました。 :)
ここにはまだコメントが投稿されていません
もっと読む
あなたのコメントを残す
ゲストとして投稿
×
この投稿を評価:
0   文字
推奨される場所

フォローする

著作権©の2009 - WWW。extendoffice.com。 | | 全著作権所有。 搭載 ExtendOffice。 | サイトマップ
MicrosoftおよびOfficeのロゴは、米国MicrosoftCorporationの米国およびその他の国における商標または登録商標です。
SectigoSSLで保護