KutoolsforOffice— 1 つのソリューション、5 つの強力なツール。少ない労力で大きな成果。

Excel で条件に基づいてセルの内容をクリアするには、どうすればよいですか?

著者Xiaoyang変更日

Excel では、条件に基づいてセルの内容をクリアする必要が生じることがあります。たとえば、セルに特定の値が含まれている場合や、別の列に空白セルがある場合、あるいは特定の背景色が設定されているセルの内容をクリアしたい場面などです。本記事では、こうしたタスクを素早く・簡単にこなすための実用的なテクニックをいくつかご紹介します。

VBA コードを使用してセルの値に基づいてセルの内容をクリア

VBA コードを使用して、値が特定の値より大きいまたは小さい場合に行全体をクリア

便利な機能を使用してセルの値に基づいてセルまたは行の内容をクリア

VBA コードを使用して、別のセルが空白の場合に行全体をクリア

VBA コードを使用して背景色に基づいてセルの内容をクリア


セルの内容をクリア VBA コードを使用してセルの値に基づいて

たとえば、次のようなデータ範囲があり、「Hoodie」というセルの内容をクリアしたい場合には、以下の VBA コードが役立ちます。

サンプルデータ

1ALT + F11キーを押して、Microsoft Visual Basic for Applicationsウィンドウを開きます。

2挿入>モジュールをクリックして、モジュールウィンドウに次のコードを貼り付けてください。

VBA コード:セルが特定の値と等しい場合にセルの内容をクリア

Sub ClearContents()
'Updateby ExtendOffice
 Dim xRng As Range
 Dim xCell As Range
 Dim xText As String
 Set xRng = Application.Range("A2:A12")
 xText = "Hoodie" 'Change this text to your own
 For Each xCell In xRng
 If xCell.Value = xText Then
 xCell.clearContents
 End If
 Next xCell
End Sub
:上記のコードにおいて、A2:A12はデータ範囲であり、セルの内容をクリア対象の範囲です。「Hoodie」はクリアしたい特定の値です。これらはご自身の環境に合わせて変更してください。

3。次に、F5キーを押してこのコードを実行すると、「Hoodie」というテキストを含むすべてのセルが一括でクリアされます(下記スクリーンショット参照)。

セルの値に基づいてセルの内容をクリアするVBAコード

kutools for excel AIのスクリーンショット

KUTOOLS AI でExcel の魔法を解き放ちましょう

  • スマート実行:セル操作、データ分析、チャート作成をすべてシンプルなコマンドで実現します。
  • カスタム数式:ワークフローの効率化に役立つ、あなただけのカスタマイズ数式を生成します。
  • VBA コーディング:VBA コードを簡単に記述・実装できます。
  • 数式の解釈:複雑な数式が簡単に理解できます。
  • テキスト翻訳:スプレッドシート内で言語の壁を乗り越えましょう!
AI 搭載のツールでExcel の機能をさらに強化しましょう。今すぐダウンロードして、これまでにない効率を体験してください!

VBA コードを使用して、値が特定の値より大きいまたは小さい場合に行全体をクリア

以下のデータ範囲において、D 列の値が300 より大きい場合または小さい場合に、その行全体の内容をクリアする VBA コードを作成します。

サンプルデータ

1ALT + F11キーを押しながら、Microsoft Visual Basic for Applicationsウィンドウを開きます。

2挿入>モジュールをクリックし、モジュールウィンドウに次のコードを貼り付けます。

VBA コード:セルの値が特定の値より大きいまたは小さい場合に行全体をクリア

Sub ClearRowInValue()
'Updateby ExtendOffice
Dim xRg As Range
Dim xStrAddress As String
Dim xStrValue As Integer
Dim xCell As Range
Dim xRowRg As Range
Dim xF As Integer
Dim xBol As Boolean
xStrAddress = "D2:D12" 'Change cell range
xStrValue = 300 'change the value
Set xRg = Range(xStrAddress)
For xF = xRg.Rows.Count To 1 Step -1
    Set xRowRg = xRg.Rows.Item(xF)
    xBol = False
    For Each xCell In xRowRg.Cells
        If Application.IsNumber(xCell.Value) Then
        If xCell.Value > xStrValue Then
        xBol = True
        Exit For
        End If
        End If
    Next
    If xBol Then
        xRowRg.EntireRow.clearContents
    End If
Next
End Sub
:上記のコードにおいて、D2:D12は行をクリアする基準となる特定の値を含むデータ範囲です。300は特定の値です。スクリプト内の>文字()If xCell.Value > xStrValue Then)は「より大きい」を意味します。「より小さい」にするには、必要に応じて<文字に変更してください。 character as you need.

3。次にF5キーを押してこのコードを実行すると、D 列の値が300 より大きいすべての行の内容がクリアされます(下記スクリーンショット参照)。

特定の値より大きいまたは小さい場合に該当する行全体をクリアするVBAコード


便利な機能を使用してセルの値に基づいてセルまたは行の内容をクリア

お使いの環境にKutools for Excelがインストールされており、特定のセルを選択する機能をご利用いただける場合は、特定の値に基づいてセルや行を一括で選択し、その内容を一度に削除できます。

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

Kutools for Excelをインストール後、次の手順に従ってください。

1。データ範囲(セルまたは行の内容をクリアする基準となる値を含む範囲)を選択し、次にKutools>選択>特定のセルを選択するをクリックします(下記スクリーンショット参照)。

「Kutools」>「選択」>「特定のセルを選択」をクリック

2。表示された特定のセルを選択するダイアログボックスで、次の操作を行ってください。

  • セルまたは行全体をクリックして選択してください。
  • 必要に応じて、指定タイプセクションで条件を設定してください。ここでは、D 列の値が300 より大きい行を選択します。

ダイアログボックスでオプションを指定

3。次にOKボタンをクリックすると、300 より大きい値を持つすべての行が選択されます。あとはキーボードのDeleteキーを押すだけで、セルの内容を簡単に削除できます(下記スクリーンショット参照)。

特定の値より大きい値を持つすべての行が選択され、その後内容が削除されます

ヒント:他にも多くの条件を使用できます。下記スクリーンショットのようにダイアログボックスからご自身の条件を指定してください。
ダイアログボックス内のその他の多数の条件

VBA コードを使用して空白セルを含む場合に選択範囲内のデータの行をクリア

このケースでは、データ範囲のセルに空白が含まれている場合、下記スクリーンショットのように、その範囲内の行データをクリアしたいと考えています。

範囲内に空白セルが含まれる場合に行のデータをクリア

このタスクを完了するには、次の VBA コードを適用してください。

1。ALT + F11 キーを押すと、Microsoft Visual Basic for Applications ウィンドウが開きます。

2挿入>モジュールをクリックし、モジュールウィンドウに次のコードを貼り付けてください。

VBA コード:空白セルを含む場合に行データをクリア

Sub ClearContents()
'Updateby ExtendOffice
Dim xcell As Range
Set xrng = Application.Range("A2:D12")
For Each xcell In xrng
If xcell.Value = "" Then
Intersect(xcell.EntireRow, xrng).ClearContents
End If
Next
End Sub
:上記のコードにおいて、A2:D12はデータ範囲であり、セルの内容をクリア対象の空白セルを含む範囲です。

3。次にF5キーを押してこのコードを実行すると、指定した範囲内の空白セルを含む行が一括でクリアされます。


VBA コードを使用して背景色に基づいてセルの内容をクリア

特定の背景色で塗りつぶされたセルをクリアするには、次の VBA コードを使用できます。

1ALT + F11キーを押しながら、Microsoft Visual Basic for Applicationsウィンドウを開きます。

2挿入>モジュールをクリックし、モジュールウィンドウに次のコードを貼り付けます。

VBA コード:背景色に基づいてセルの内容をクリア

Sub Clearcontents()
'Updateby ExtendOffice
Dim xcell As Range
Dim xrng As Range
Set xrng = Application.Range("A2:D12")
    For Each xcell In xrng
        If xcell.Interior.Color = RGB(252, 228, 214) Then
            xcell.Clearcontents
        End If
    Next
End Sub
:上記のコードにおいて、A2:D12は使用するデータ範囲です。RGB(252, 228, 214)はセルをクリアする基準となる特定の色です。この背景色の RGB 値は、お使いのコンピューターのペイントプログラムを使って取得できます。

3。次にF5キーを押してこのコードを実行すると、指定した背景色のセルの内容が即座にクリアされます(下記スクリーンショット参照)。

背景色に基づいてセルの内容をクリアするVBAコード


  • スーパー数式バー(複数行のテキストや数式を簡単に編集可能);リーディングレイアウト(多数のセルを簡単に読み書き可能);フィルタリング範囲に貼り付け
  • 結合セル/行/列とデータ保持;セルの分割コンテンツ;重複行を結合して合計/平均を計算…重複の入力を防止セル;範囲を比較
  • 重複または一意の行を選択空白行を選択(すべてのセルが空);スーパー検索とあいまい検索多数のワークブック内で実行;ランダム選択…
  • 正確にコピー複数セルを数式参照を変更せずに移動;複数シートへの参照を自動作成箇条書きの挿入、チェックボックスなど…
  • お気に入りの数式を保存して素早く挿入、範囲、チャート、画像;セルの暗号化パスワード付きで保護;メーリングリストの作成メール送信など…
  • テキストの抽出、テキストの追加、特定の位置の文字を削除、スペースを削除;データページ統計を作成・印刷;セルの内容とコメントを相互変換
  • スーパーフィルター(フィルタースキームを保存し、他のシートに適用可能);高度なソート月/週/日、頻度などでグループ化;特殊フィルタ太字、イタリック体などで強調表示…
  • ワークブックとワークシートを統合;テーブルのマージをキーカラムに基づいてマージ;データの分割を複数のシートに分割xls、xlsx、PDF を一括変換
  • PivotTable を以下でグループ化:週番号、曜日など…ロック解除済みセルと選択範囲をロックを異なる色で表示;数式/名前を持つセルをハイライト表示
kte tab 201905
  • Word、Excel、PowerPoint でタブを使った編集と閲覧を有効化。Publisher、Access、Visio、Project でもご利用いただけます。
  • 複数のドキュメントを、新しいウィンドウではなく、同じウィンドウ内の新しいタブで開いたり作成したりできます。
  • 生産性が50%向上し、毎日数百回のマウスクリックを削減できます!
officetab bottom